Avatar billede bigo Nybegynder
22. januar 2003 - 22:26 Der er 8 kommentarer og
1 løsning

Få id med i en select ved window.open

Hejsa.

Underligt problem. Men jeg tror den er grum at løse.

Here goes. Jeg har en select hvor der åbnes et nyt vindue ved en onchange.

Kode:

<form method=post>
<select name=ing_id onchange=\"java script:window.open('vis_ingredient.php', 'Ingredient','scrollbars=yes,resizable=no,toolbar=no,width=400,height=500')\"><option>See Ingredient</option>
";
$ing_sql = "
SELECT * FROM ingred_relation, relationer
LEFT JOIN ingredients ON ingredients.ingredient_id = ingred_relation.ingredient_id
LEFT JOIN opskrifter ON opskrifter.opskrift_id = relationer.opskrift_id
LEFT JOIN courses ON courses.course_id = relationer.course_id
LEFT JOIN cuisines ON cuisines.cuisine_id = relationer.cuisine_id
LEFT JOIN wines ON wines.wine_id = relationer.wine_id
LEFT JOIN kinds ON kinds.kind_id = relationer.kind_id
WHERE relationer.opskrift_id = '$row[opskrift_id]' AND ingred_relation.opskrift_id = '$row[opskrift_id]'
";
$ing_res = mysql_query($ing_sql);
while ($ing_row = mysql_fetch_assoc($ing_res))
{
echo "<option value='$ing_row[ingredient_id]'>$ing_row[ingredient_name]</option>";
}
echo "
</select>
</form>

Spørgsmålet er: hvordan får jeg $ing_id videresendt til vis_ingredient.php??
Avatar billede miraculix Nybegynder
22. januar 2003 - 22:45 #1
Du skal lige udvide din javascript lidt.

Hvis det kun skal virke MSIE kan du klare dig med at lave din window.open om til:

java script: window.open('vis_ingredient.php?ing_id='+ this.options[this.selectedItem].value, 'Ingredient' osv...

Hvis det skal virke i Netscape mener jeg bestemt at man er nødt til at løbe hver enkelt option igennem for at finde ud af om den er selected, men det er i virkeligheden et spørgsmål for et andet forum...

Men du kan jo lige prøve. Måske virker det i de nyeste versioner af netscape..
Avatar billede bigo Nybegynder
22. januar 2003 - 22:58 #2
øv. det virker ikke helt..

den giver en fejl:
Fejl: 'this.options[...].value' er null eller ikke et object
Avatar billede bigo Nybegynder
22. januar 2003 - 23:00 #3
tror du jeg skal over i javascript afdelingen..
Avatar billede bigo Nybegynder
22. januar 2003 - 23:03 #4
jeg lægger det i javascript.. men det var et godt forsøg.. det er points værd. så læg lige et svar..
Avatar billede jakoba Nybegynder
22. januar 2003 - 23:04 #5
det hedder  selectedIndex , ikke selectedItem  ellers er alt OK (også for netscape :-))

nae en ting. i en eventhandler skal der ikke stå 'java script:' forrest

<select name=ing_id onchange=\"window.open('vis_ingredient.php?ing_id='+ this.options[this.selectedIndex].value, 'Ingredient', 'scrollbars=yes,resizable=no,toolbar=no,width=400,height=500')\">

mvh JakobA
Avatar billede miraculix Nybegynder
22. januar 2003 - 23:06 #6
Ja, men jeg kan godt lige finde svaret til dig... Det er sikkert et tegn jeg har glemt...
Avatar billede bigo Nybegynder
22. januar 2003 - 23:07 #7
Yeha.. JakobA er ..........................

Smid et svar og jeg vil med glæde give points..Hvis dette var Netto var den slags service uhørt ;-)
Avatar billede miraculix Nybegynder
22. januar 2003 - 23:13 #8
Jep, jeg kan kun give jakoba ret:

den korrekte syntax er:
this.options[this.selectedIndex].value
Avatar billede bigo Nybegynder
23. januar 2003 - 22:41 #9
Hvad med dig JakobA.. Vil du have points ??
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