/ Forside / Teknologi / Udvikling / Java Scripts / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java Scripts
#NavnPoint
molokyle 5410
Klaudi 2799
smorch 2439
kim 1360
Harlekin 1134
bentjuul 984
gibson 800
severino 695
Random 675
10  konsulent.. 626
Sende form-data til flere sider
Fra : Kasper Katzmann


Dato : 20-05-04 07:03

Jeg har en onChange-event på en <select>-menu der, når den aktiveres, sender
indholdet til en ny side. Det virker fint.

Udfordringen, for mig, ligger i at jeg gerne vil have at indholdet bliver
sendt til flere sider samtidig.

Altså: Når onChange-eventen bliver aktiveret på formularen, skal det samme
indhold sendes til både side1, side2 og hvad der eller måtte være af sider.

Kan man det?

X-POST: dk.edb.internet.webdesign.clientside


--
Med venlig hilsen
Kasper Katzmann
http://www.katzmann.dk



 
 
Per Thomsen (20-05-2004)
Kommentar
Fra : Per Thomsen


Dato : 20-05-04 10:18

Kasper Katzmann wrote:

> Jeg har en onChange-event på en <select>-menu der, når den aktiveres, sender
> indholdet til en ny side. Det virker fint.
>
> Udfordringen, for mig, ligger i at jeg gerne vil have at indholdet bliver
> sendt til flere sider samtidig.
>
> Altså: Når onChange-eventen bliver aktiveret på formularen, skal det samme
> indhold sendes til både side1, side2 og hvad der eller måtte være af sider.
>
> Kan man det?
>

Ikke umiddelbart. En form har kun en action og kan derfor kun submittes
til en side.

Men...

Du kan jo lave en anden form og kopierer elementerne fra den første form
dertil, og så submitte den.

Eks. (utestet):
<script type="text/javascript">
   function copyForm() {
    var frm1 = document.getElementById('frm1');
    var frm2 = document.getElementById('frm2');
    var e1,e2;
    for(e1 in frm1.elements) {
      e2 = document.createElement('input');
      e2.setAttribute('type', 'hidden');
      e2.setAttribute('name', e1.getAttribute('name'));
      e2.setAttribute('value', e1.getAttribute('value'));
      frm2.appendChild(e2);
    }
    frm2.submit();
    return true;
   }
</script>
<form id="frm1" action="side1.php" method="post" target="frame1"
onSubmit="return copyForm();">
Data1 :<input type="text" name="data1" value="" /><br/>
Data2 :<input type="text" name="data2" value="" /><br/>
<input type="submit" value="Send" />
</form>
<form id="frm2" action="side2.php" method="post" target="frame2">
</form>

Det undrer mig dog rimelig meget hvorfor man overhovedet har lyst til at
gøre sådan noget. Det tyder lidt (imho) på at du nok skulle bruge et
tabel/div baseret layout i stedet for et frame-baseret.

MVH Per Thomsen,
http://www.pert.dk/

Kasper Katzmann (20-05-2004)
Kommentar
Fra : Kasper Katzmann


Dato : 20-05-04 17:36

....og så var det jo at Per Thomsen sagde:
> Det undrer mig dog rimelig meget hvorfor man overhovedet har lyst til
> at gøre sådan noget. Det tyder lidt (imho) på at du nok skulle bruge
> et tabel/div baseret layout i stedet for et frame-baseret.


Det ville jeg også gøre normalt, men i dette tilfælde er der ingen vej
udenom da jeg skal submitte indholdet fra den første select-menu til en
anden. Problemet består i at begge menuer er hierarkisk struktureret:
Side 1
Side 1.1
Side 2
Side 2.1
Side 2.2
Side 2.2.1

Og efter submit af den første skal den anden automatiske sætte "selected" på
den side der er Parent til den første. Det dutter bare ikke hvis de ligger
på samme side.


--
Med venlig hilsen
Kasper Katzmann
http://www.katzmann.dk



Kasper Katzmann (21-05-2004)
Kommentar
Fra : Kasper Katzmann


Dato : 21-05-04 17:09

....og så var det jo at Kasper Katzmann sagde:
> Jeg har en onChange-event på en <select>-menu der, når den aktiveres,
> sender indholdet til en ny side. Det virker fint.
>
> Udfordringen, for mig, ligger i at jeg gerne vil have at indholdet
> bliver sendt til flere sider samtidig.
>
> Altså: Når onChange-eventen bliver aktiveret på formularen, skal det
> samme indhold sendes til både side1, side2 og hvad der eller måtte
> være af sider.
>
> Kan man det?
>
> X-POST: dk.edb.internet.webdesign.clientside

Fandt en nem løsning på www.experts-exchange.com.

<frameset>
<frame name="f1" src="page1.htm">
<frame name="f2" src="page2.htm">
<frame name="f3" src="page3.htm">
</frameset>


in f3 have the form

<script>
function multi(form){

form.target='f1'
form.action='http://google.com'
form.submit()

form.target='f2'
form.action='http://yahoo.com'
form.submit()
}
</script>

<form>
<input name="t1">
<input type="submit" onclick="multi(this.form)">
</form>


--
Med venlig hilsen
Kasper Katzmann
http://www.katzmann.dk



Søg
Reklame
Statistik
Spørgsmål : 177552
Tips : 31968
Nyheder : 719565
Indlæg : 6408847
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste