Avatar billede steven Nybegynder
04. juli 2002 - 22:08 Der er 10 kommentarer og
1 løsning

Sende data mellem hovedside og iframe

Hej Eksperter!

Jeg har et problem med i hjemmeside, hvor  jeg skal sende data fra en iframe til hovedsiden (den side, hvori framen er). I kan se hvor jeg er nået til på www.netspejder.dk/test
Når brugeren har valgt område dukker der en iframe op, hvori det er muligt at vælge kommune. Problemet består i at sende de data videre til sogres.asp siden, når brugeren klikker på Søg.
Prøv engang selv!

Mvh

Steven

Herunder kan I finde koden til de mange sider

==========
index.asp
==========
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<%
Dim komDB
set komDB = Server.CreateObject("ADODB.Connection")
strODBC = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & Request.ServerVariables("APPL_PHYSICAL_PATH") & "kommuweb.mdb"
komDB.Open (strODBC)
%>
<html>

    <head>
        <meta http-equiv="content-type" content="text/html;charset=iso-8859-1">
        <meta name="generator" content="Adobe GoLive 6">
        <title>Kommunalbogen.dk - Hele danmarks telefonbog</title>
        <style type="text/css" media="screen"><!--
a  { color: black; font-style: normal; font-weight: bold; font-size: 10px; text-decoration: none }
a.active  { color: black; font-style: normal; font-weight: bold; font-size: 10px; text-decoration: none }
a.hover  { color: black; font-style: normal; font-weight: bold; font-size: 10px; text-decoration: none }
a.link  { color: black; font-style: normal; font-weight: bold; font-size: 10px; text-decoration: none }
a.visited  { color: black; font-style: normal; font-weight: bold; font-size: 10px; text-decoration: none }
--></style>
    </head>
<script language="Javascript">
    function skift(vaerdi) {
        document.getElementById('kommune').src="kommune.asp?id="+vaerdi
    }
</Script>
    <body bgcolor="#d2d2d2" text="black" link="black" vlink="black" alink="black" leftmargin="10" marginheight="0" marginwidth="10" topmargin="0">
            <table width="180" border="1" cellspacing="0" cellpadding="0" align="center" bgcolor="white" bordercolor="#000000" bordercolordark="black" bordercolorlight="black">
            <tr>
                <td>
                    <table width="64" border="0" cellspacing="0" cellpadding="0" align="center">
                        <tr>
                            <td align="right" valign="bottom" height="68" background="img/top.gif"><font size="1" face="Verdana">
<%
'Udskrivning af datotekst
Ugedagnr=Weekday(Now())
SELECT CASE Ugedagnr
CASE "1"
ugedag = "Søndag"

CASE "2"
ugedag = "Mandag"

CASE "3"
ugedag = "Tirsdag"

CASE "4"
ugedag = "Onsdag"

CASE "5"
ugedag = "Torsdag"

CASE "6"
ugedag = "Fredag"

CASE "7"
ugedag = "Lørdag"
END SELECT

manednr = month(now())
SELECT CASE manednr
CASE "1"
maned = "januar"

CASE "2"
maned = "februar"

CASE "3"
maned = "marts"

CASE "4"
maned = "april"

CASE "5"
maned = "maj"

CASE "6"
maned = "juni"

CASE "7"
maned = "juli"

CASE "8"
maned = "august"

CASE "9"
maned = "septemper"

CASE "10"
maned = "oktober"

CASE "11"
maned = "november"

CASE "12"
maned = "december"

END SELECT

Response.Write(Ugedag & " d. " & day(now()) & ". " & maned & " " & year(now()) )
%>                                        &nbsp;<br>
                                    &nbsp;</font></td>
                        </tr>
                        <tr>
                            <td>
                                <table width="758" border="0" cellspacing="0" cellpadding="0">
                                    <tr>
                                        <td align="left" valign="top" width="177" background="img/venstre.gif">
                                            <p>&nbsp;</p>
                                            <p><font size="1" face="Verdana"><b><a title="Forsiden" href="http://kommunalbogen.dk">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Forsiden</a><br>
                                                        <br>
                                                        <a title="Brancheoversigt" href="branche.asp">
                                                        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Brancheoversigt</a><br>
                                                        <br>
                                                        <a title="Tilf&oslash;j dit firma" href="tilfoj.asp">
                                                        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Tilf&oslash;j dit firma</a><br>
                                                        <br>
                                                            <a title="Service &amp; Information" href="service.asp">
                                                        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Service &amp; Information</a><br>
                                                        <br>
                                                            <a title="Om kommunalbogen.dk" href="omkommu.asp">
                                                        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Om Kommunalbogen.dk</a><br>
                                                        <br>
                                                        <a title="Kontakt os" href="kontakt.asp">
                                                        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Kontakt os</a></b></font></p>
                                        </td>
                                        <td align="left" valign="top" width="405">
                                            <div align="center">
                                                <table width="405" border="0" cellspacing="0" cellpadding="0">
                                                    <tr height="70">
                                                        <td align="center" valign="bottom" height="70"><img src="banner/banner.gif" width="200" height="60"> <img src="banner/banner.gif" width="200" height="60"></td>
                                                    </tr>
                                                    <tr height="7">
                                                        <td height="7"><img src="img/streg.gif" alt="" height="7" width="405" border="0"></td>
                                                    </tr>
                                                    <tr height="212">
                                                        <td align="center" valign="middle" height="212">
                                                            <table border="0" cellspacing="0" cellpadding="0">
                                                                <tr>
                                                                    <td width="120">&nbsp;</td>
                                                                    <td><form action="sogres.asp" method="POST"><font size="5" face="Verdana"><b>S&oslash;gning</b></font><br>
                                                                                <font face="Verdana">S&oslash;geord<br>
                                                                                <input type="text" name="sogeord" size="24" border="0"><br>
                                                                                <font face="Verdana">V&aelig;lg omr&aring;de</font><br>
                                                                                <select size="1" id="omrade"  onchange="skift(omrade.value)">
                                                                                <option selected>Hele landet</option>
                                                                                <%
                                                                                    SQL = "SELECT * FROM omrade WHERE overomrade=1;"
                                                                                    Set om1RS = komdb.Execute(SQL)
                                                                                   
                                                                                    WHILE NOT om1RS.EOF
                                                                                        Response.Write("<option value='" & om1RS("omradeid") & "'>&nbsp;&nbsp;&nbsp;" & om1RS("omradenavn") & "</option>")
                                                                                       
                                                                                        SQL = "SELECT * FROM omrade WHERE overomrade=" & om1RS("omradeid") & ";"
                                                                                        Set om2RS = komdb.Execute(SQL)
                                                                                        WHILE NOT om2RS.EOF
                                                                                            Response.Write("<option value='" & om2RS("omradeid") & "'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;" & om2RS("omradenavn") & "</option>")
                                                                                            om2RS.MoveNext
                                                                                        WEND
                                                                                       
                                                                                        om1RS.MoveNext
                                                                                    WEND
                                                                                    %>
                                                                                </select>
                                                                                <iframe src="tom.htm" border="0" height="50" width="220" align="middle" frameborder="0" ALLOWTRANSPARENCY="true" scrolling="no" id="kommune"></iframe>
                                                                                <br><input type="submit" name="sog" value="&nbsp;&nbsp;Søg&nbsp;&nbsp;" border="0">
                                                                        </font></form></td>
                                                                </tr>
                                                            </table>
                                                        </td>
                                                    </tr>
                                                    <tr height="11">
                                                        <td valign="top" height="11"><img src="img/streg.gif" alt="" width="405" height="7" border="0"></td>
                                                    </tr>
                                                    <tr height="60">
                                                        <td align="center" valign="top" height="60"><img src="banner/banner.gif" width="200" height="60"> <img src="banner/banner.gif" width="200" height="60"></td>
                                                    </tr>
                                                </table>
                                            </div>
                                        </td>
                                        <td valign="top" width="176" background="img/hojre.gif"></td>
                                    </tr>
                                </table>
                            </td>
                        </tr>
                        <tr>
                            <td><img src="img/bund.gif" width="760" height="43"></td>
                        </tr>
                    </table>
                </td>
            </tr>
        </table>
    </body>
</html>

===========
kommune.asp
===========
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<!-- #include file="inc/database.inc" -->
<html>

    <head>
        <meta http-equiv="content-type" content="text/html;charset=iso-8859-1">
        <meta name="generator" content="Adobe GoLive 6">
        <title>kommune</title>
    </head>

    <body bgcolor="#ffffff" leftmargin="0" marginheight="0" marginwidth="0" topmargin="0">
        <font face="Verdana">Vælg kommune</font><br>
        <select name='kommune2' size='1'>
        <%
            IF Request.querystring("id") = "" THEN
                Response.redirect("tom.htm")
            ELSE
                id = Request.QueryString("id")
            END IF
           
            SQL = "SELECT * FROM omrade WHERE omradeid=" & id & ";"
            Set omRS = komdb.Execute(SQL)
            Response.Write("<option selected value='" & id & "'>Hele området</option>")
           
            SQL = "SELECT * FROM omrade WHERE overomrade=" & id & ";"
            Set omRS = komdb.Execute(SQL)

            IF omRS("type")="kommune" THEN
                WHILE NOT omRS.EOF
                    Response.Write("<option name='" & omRS("omradeid") & "'>" & omRS("omradenavn") & "</option>")
                    omRS.MoveNext
                WEND
            ELSE
                WHILE NOT omRS.EOF
                    SQL = "SELECT * FROM omrade WHERE overomrade=" & omRS("omradeid") & ";"
                    Set om2RS = komdb.Execute(SQL)

                    WHILE NOT om2RS.EOF
                        Response.Write("<option name='" & om2RS("omradeid") & "'>" & om2RS("omradenavn") & "</option>")
                        om2RS.MoveNext
                    WEND
                    omRS.MoveNext
               
                    om2RS.Close
                    Set om2RS = Nothing
                WEND
            END IF
        %>
        </select>
    </body>
</html>
<!-- #include file="inc/luk.inc" -->

==========
sogres.asp
==========
<!-- #include file="inc/database.inc" -->
<html>

    <head>
        <meta http-equiv="content-type" content="text/html;charset=iso-8859-1">
        <meta name="generator" content="Adobe GoLive 6">
        <title>Kommunalbogen.dk - Hele danmarks telefonbog</title>
        <link rel="stylesheet" type="text/css" href="inc/style.css">
    </head>

    <body bgcolor="#d2d2d2" text="black" link="black" vlink="black" alink="black" leftmargin="10" marginheight="0" marginwidth="10" topmargin="0">
            <table width="180" border="1" cellspacing="0" cellpadding="0" align="center" bgcolor="white" bordercolor="#000000" bordercolordark="black" bordercolorlight="black">
            <tr>
                <td>
                    <table width="64" border="0" cellspacing="0" cellpadding="0" align="center">
                        <tr height="68">
                            <td align="right" valign="bottom" height="68" background="img/top.gif"><font size="1" face="Verdana">
<%
'Udskrivning af datotekst
Ugedagnr=Weekday(Now())
SELECT CASE Ugedagnr
CASE "1"
ugedag = "Søndag"

CASE "2"
ugedag = "Mandag"

CASE "3"
ugedag = "Tirsdag"

CASE "4"
ugedag = "Onsdag"

CASE "5"
ugedag = "Torsdag"

CASE "6"
ugedag = "Fredag"

CASE "7"
ugedag = "Lørdag"
END SELECT

manednr = month(now())
SELECT CASE manednr
CASE "1"
maned = "januar"

CASE "2"
maned = "februar"

CASE "3"
maned = "marts"

CASE "4"
maned = "april"

CASE "5"
maned = "maj"

CASE "6"
maned = "juni"

CASE "7"
maned = "juli"

CASE "8"
maned = "august"

CASE "9"
maned = "septemper"

CASE "10"
maned = "oktober"

CASE "11"
maned = "november"

CASE "12"
maned = "december"

END SELECT

Response.Write(Ugedag & " d. " & day(now()) & ". " & maned & " " & year(now()) )
%>                                        &nbsp;<br>
                                    &nbsp;</font></td>
                        </tr>
                        <tr>
                            <td>
                                <table width="758" border="0" cellspacing="0" cellpadding="0">
                                    <tr>
                                        <td align="left" valign="top" width="177" height="366 " background="img/venstre.gif" style="background-repeat: no-repeat">
                                            <p>&nbsp;</p>
                                            <p><font size="1" face="Verdana"><b><a title="Forsiden" href="http://kommunalbogen.dk">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Forsiden</a><br>
                                                        <br>
                                                        <a title="Brancheoversigt" href="branche.asp">
                                                        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Brancheoversigt</a><br>
                                                        <br>
                                                        <a title="Tilf&oslash;j dit firma" href="tilfoj.asp">
                                                        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Tilf&oslash;j dit firma</a><br>
                                                        <br>
                                                        <a title="Service &amp; Information" href="service.asp">
                                                        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Service &amp; Information</a><br>
                                                        <br>
                                                            <a title="Om kommunalbogen.dk" href="omkommu.asp">
                                                        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Om Kommunalbogen.dk</a><br>
                                                        <br>
                                                        <a title="Kontakt os" href="kontakt.asp">
                                                        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Kontakt os</a></b></font></p>
                                        </td>
                                        <td align="left" valign="top" width="405">
                                           
                                                <table width="405" border="0" cellspacing="0" cellpadding="0">
                                                    <tr>
                                                        <td align="center" valign="bottom" height="68"><img src="banner/banner.gif" width="200" height="60"> <img src="banner/banner.gif" width="200" height="60"></td>
                                                    </tr>
                                                    <tr height="7">
                                                        <td height="7"><img src="img/streg.gif" alt="" height="7" width="405" border="0"></td>
                                                    </tr>
                                                    <tr height="212">
                                                        <td align="left" valign="top" height="212">
                                                            <div align="center">
                                                                <table width="400" border="0" cellspacing="0" cellpadding="0">
                                                                    <tr>
                                                                        <td width="400"><font size="5" face="Verdana"><b>Resultat&nbsp;af&nbsp;s&oslash;gning</b></font></td>
                                                                    </tr>
                                                                    <tr>
                                                                        <td width="400">&nbsp;</td>
                                                                    </tr>
                                                                    <tr>
                                                                        <td width="400">
<%
'===============
'Brancheudskrift
'===============
omrade = Request.Form("kommune2")
sogeord = Request.Form("sogeord")
...(så får I ikke mere)
Avatar billede nikolajdu Nybegynder
04. juli 2002 - 22:17 #1
ER det i iframen eller på "hovedsiden" der skal sendes videre til...

:))

/Nikolaj
Avatar billede jakoba Nybegynder
04. juli 2002 - 22:29 #2
Når hovedsiden skal opdateres vil der være en periode hvor din Iframe ikke har nogen side i browseren at ligge i, så den bliver også fjernet. og skal så genhetes bagefter når den igen har et sted at være.

du må selv sørge for ar modificere den genhentede hovedside så den i sin tur genhenter den korrekte side til iframen.
Avatar billede nikolajdu Nybegynder
04. juli 2002 - 22:32 #3
hovedsiden... det står jo for oven. Tror jeg lod mig forvirre af al den kode ;-)
Avatar billede jakoba Nybegynder
04. juli 2002 - 22:42 #4
Undskyld. misforstået :(
den inkluderede side er kommune.asp ikke

indsæt en onchange i <select kommandoen:
    <select name='kommune2' onchange="parent.document.formnavn.skjultkommunefelt.value=this.options[this.selectedIndex].value">

og tilføj et ekstra felt i formularen i hovedsiden:
  <imput type='hidden' name="skjultkommunefelt" value="">

PS: i dine options siger du
    <option name=
det bør være
    <option value=

mvh JakobA
Avatar billede steven Nybegynder
04. juli 2002 - 22:45 #5
Hej JakobA,

Umiddelbart virker din løsning som værende korrekt! - Mange tak
Jeg har ikke mulighed for at teste det lige nu, men jeg skal nok vende tilbage så snart jeg har gjort dette (i løbet af i morgen)

/Steven
Avatar billede sn0wflake Nybegynder
05. juli 2002 - 05:01 #6
Det er da klart hvorfor det ikke virker!
Dit link, f.eks. "Brancheoversigt", har ingen target eller action (f.eks. onclick=...)
Derfor åbner browseren selvfølgelig linket i et nyt vindue.
Sørg for at have f.eks. et target, f.eks.:

<a href="disco.html" target="kommune">John Travolta</a>

Jeg er for træt til at skrive JavaScriptet <:)
Avatar billede steven Nybegynder
05. juli 2002 - 10:14 #7
Hej JakobA,

Nu har jeg implementeret din kode, men der er stadig noget der driller. nedenstående kode er fra kommune.asp, som ikke sender den valgte kommune videre til index.asp. Kan du hjælpe mig med problemet?, så sætter jeg 20 points mere på højkant.

/Steven

==================
KODEN DER DRILLER!
==================

<select name='kommune2' onchange="parent.document.sogefelt.skjultkommunefelt.value=this.options[this.selectedIndex].value" size='1'>
<%
    IF Request.querystring("id") = "" THEN
        Response.redirect("tom.htm")
    ELSE
        id = Request.QueryString("id")
    END IF
   
    SQL = "SELECT * FROM omrade WHERE omradeid=" & id & ";"
    Set omRS = komdb.Execute(SQL)
    Response.Write("<option selected value='" & id & "'>Hele området</option>")
           
    SQL = "SELECT * FROM omrade WHERE overomrade=" & id & ";"
    Set omRS = komdb.Execute(SQL)
        IF omRS("type")="kommune" THEN
        WHILE NOT omRS.EOF
            Response.Write("<option value='" & omRS("omradeid") & "'>" & omRS("omradenavn") & "</option>")
            omRS.MoveNext
        WEND
    ELSE
        WHILE NOT omRS.EOF
            SQL = "SELECT * FROM omrade WHERE overomrade=" & omRS("omradeid") & ";"
            Set om2RS = komdb.Execute(SQL)
                WHILE NOT om2RS.EOF
                Response.Write("<option value='" & om2RS("omradeid") & "'>" & om2RS("omradenavn") & "</option>")
                om2RS.MoveNext
            WEND
            omRS.MoveNext
       
            om2RS.Close
            Set om2RS = Nothing
        WEND
    END IF
%>
</select>
Avatar billede steven Nybegynder
05. juli 2002 - 10:16 #8
Hej sn0wflake,

Jeg har afvist dit svar fordi du ikke har svaret på det spørgsmål jeg stiller. linket brancheoversigt er ikke færdigt endnu, hvilket er grunden til at det ikke virker.

/Steven
Avatar billede jakoba Nybegynder
05. juli 2002 - 10:30 #9
du skriver:
      parent.document.sogefelt.skjultkommunefelt.value
og jeg er ikke glad for navnet 'sogefelt' det antyder at der står  name='sogefelt' i en <input kommando i hovedsiden. det skal være hele formularens navn.
    <form action="sogres.asp" method="POST" name='sogefelt'>

hvordan ser din form (i hovedsiden) ud i øjeblikket:

mvh JakobA
Avatar billede steven Nybegynder
05. juli 2002 - 10:50 #10
Hej JakobA,

Tjaaa, med din kommentar fik du mig til at indse at jeg havde kommet til at navngive både tekstfeltet og formen for "sogefelt", hvilket gav nogle problemer selvfølgelig. Jeg har rettet formens navn, og nu virker det - MANGE TAK!

Du får de 80 points som lovet!

/Steven
Avatar billede jakoba Nybegynder
05. juli 2002 - 11:34 #11
takker :-))
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester