31. marts 2008 - 00:01
Der er
13 kommentarer og 1 løsning
this.value i IE
Jeg har nedenfor en onchange på en select.. Idet man vælger en ny option skal den nyvalgte option sendes med i min form. I Firefox virker det, men ikke i IE? Findes der et alternativ så det virker i både IE og Firefox? <select onchange="this.form.action.value = 'order'; this.form.track_id.value = 215; this.form.track_pos.value = this.value; this.form.submit()">
Annonceindlæg tema
31. marts 2008 - 00:40
#1
<ole> Du har forhåbentlig ikke et felt med navnet 'action'? I så fald skal du døbe det om - ellers ved JS-fortolkeren ikke, om det er formens action attribut eller feltet med navnet 'action', du vil adressere ;o) /mvh </bole>
31. marts 2008 - 00:41
#2
- brug heller aldrig en knap med navnet 'submit' ;o)
31. marts 2008 - 16:27
#3
-- eller f.eks. en form med navnet 'form' !-)
31. marts 2008 - 17:03
#4
selvom jeg ændrer action feltet til noget andet ændrer det ikke på noget :(
31. marts 2008 - 20:08
#5
Denne kode kan jeg altså ikke få til andet end at virke: <form action=""> <select onchange="this.form.noget.value = 'order'; this.form.track_id.value = 215; this.form.track_pos.value = this.value; this.form.submit()"> <option value="et">Option #1</option> <option value="to">Option #2</option> <option value="tre">Option #3</option> <option value="fire">Option #4</option> </select> <p><input type="text" name="track_id"></p> <p><input type="text" name="track_pos"></p> <p><input type="text" name="noget"></p> </form> Test den i et 'nøgent' HTML-dokument - og tjek, hvad der står i adresselinjen efter submit
06. april 2008 - 15:30
#6
ja, her virker det godt nok, men jeg forstår det virkelig ikke? jeg kan ikke forstå hvordan noget kan have indvirkning på det? onchange="this.form.track_id.value = 215; this.form.track_pos.value = this.value; alert(this.value)" her bliver this.value heller ikke alertet i IE.. selve scriptet foregår jo på selve elementet så kan ikke lige se for mig hvorfor det ikke skulle kunne virke?
06. april 2008 - 15:34
#7
...mere af din kode, tak. ;)
06. april 2008 - 17:51
#8
<form method="post" action="/trackcompiler.net/list.php?mode=comp&limit=0"> <input type="hidden" name="_form" value="list"> <input type="hidden" name="act"> <input type="hidden" name="track_id"> <input type="hidden" name="track_pos"> <table style="margin:0 auto"> <tr> <td colspan="10"><div class="actions"><span class="marked">Actions:</span> <a href="java script:popup(1)">Print</a> | <a href="/trackcompiler.net/list.php?mode=comp&limit=0&comp_id=1">Track order</a></div> <div class="comp_id" style="float:right">1</div><div class="comp_headline">Electro house, Progressive house</div></td> </tr> <tr style="text-align:center"> <td class="list_top"></td> <td class="list_top"></td> <td class="list_top">Track</td> <td class="list_top">Genre</td> <td class="list_top">BPM</td> <td class="list_top">End</td> <td class="list_top">Label</td> <td class="list_top">Released</td> <td class="list_top">Rating</td> </tr> <tr> <td class="list list_sec" style="padding-right:0px"><input type="checkbox" name="id_arr[]" value="1069"></td> <td class="list list_sec" style="text-align:right"> <span class="headline">1</span> </td> <td class="list list_sec"><span class="marked">Adam K & Soha</span><br>Twilight</td> <td class="list list_sec">Progressive house</td> <td class="list list_sec" style="text-align:right">128</td> <td class="list list_sec" style="text-align:right; white-space:nowrap">-00:05</td> <td class="list list_sec">Motivo</td> <td class="list list_sec" style="text-align:right; white-space:nowrap">2008-02</td> <td class="list list_sec" style="text-align:right; white-space:nowrap"><img class="none" src="gfx/obj.rating1.png" style="margin-left:3px"><img class="none" src="gfx/obj.rating1.png" style="margin-left:3px"><img class="none" src="gfx/obj.rating1.png" style="margin-left:3px"><img class="none" src="gfx/obj.rating1.png" style="margin-left:3px"><img class="none" src="gfx/obj.rating1.png" style="margin-left:3px"></td> </tr> <tr> <td class="list " style="padding-right:0px"><input type="checkbox" name="id_arr[]" value="1079"></td> <td class="list " style="text-align:right"> <span class="headline">2</span> </td> <td class="list "><span class="marked">30hz feat. Yolanda</span><br>Daddio (Miles Dyson remix)</td> <td class="list ">Electro house</td> <td class="list " style="text-align:right">127</td> <td class="list " style="text-align:right; white-space:nowrap">-00:47</td> <td class="list ">LOT49</td> <td class="list " style="text-align:right; white-space:nowrap">2007-11</td> <td class="list " style="text-align:right; white-space:nowrap"><img class="none" src="gfx/obj.rating1.png" style="margin-left:3px"><img class="none" src="gfx/obj.rating1.png" style="margin-left:3px"><img class="none" src="gfx/obj.rating1.png" style="margin-left:3px"><img class="none" src="gfx/obj.rating1.png" style="margin-left:3px"><img class="none" src="gfx/obj.rating1.png" style="margin-left:3px"></td> </tr> <tr> <td class="list list_sec" style="padding-right:0px"><input type="checkbox" name="id_arr[]" value="1223"></td> <td class="list list_sec" style="text-align:right"> <span class="headline">3</span> </td> <td class="list list_sec"><span class="marked">Abel The Kid & Raul Ortiz</span><br>Kraco</td> <td class="list list_sec">Progressive house</td> <td class="list list_sec" style="text-align:right">127</td> <td class="list list_sec" style="text-align:right; white-space:nowrap">-00:06</td> <td class="list list_sec">Set Me Free</td> <td class="list list_sec" style="text-align:right; white-space:nowrap">2008-01</td> <td class="list list_sec" style="text-align:right; white-space:nowrap"><img class="none" src="gfx/obj.rating1.png" style="margin-left:3px"><img class="none" src="gfx/obj.rating1.png" style="margin-left:3px"><img class="none" src="gfx/obj.rating1.png" style="margin-left:3px"><img class="none" src="gfx/obj.rating1.png" style="margin-left:3px"><img class="none" src="gfx/obj.rating1.png" style="margin-left:3px"></td> </tr> <tr> <td class="list " style="padding-right:0px"><input type="checkbox" name="id_arr[]" value="1373"></td> <td class="list " style="text-align:right"> <span class="headline">4</span> </td> <td class="list "><span class="marked">16 Bit Lolitas</span><br>Back to one</td> <td class="list ">Progressive house</td> <td class="list " style="text-align:right">126</td> <td class="list " style="text-align:right; white-space:nowrap">-00:05</td> <td class="list ">Hope Recordings</td> <td class="list " style="text-align:right; white-space:nowrap">2007-04</td> <td class="list " style="text-align:right; white-space:nowrap"><img class="none" src="gfx/obj.rating1.png" style="margin-left:3px"><img class="none" src="gfx/obj.rating1.png" style="margin-left:3px"><img class="none" src="gfx/obj.rating1.png" style="margin-left:3px"><img class="none" src="gfx/obj.rating1.png" style="margin-left:3px"><img class="none" src="gfx/obj.rating1.png" style="margin-left:3px"></td> </tr> <tr> <td class="list list_sec" style="padding-right:0px"><input type="checkbox" name="id_arr[]" value="1417"></td> <td class="list list_sec" style="text-align:right"> <span class="headline">5</span> </td> <td class="list list_sec"><span class="marked">Aaron McClelland</span><br>Spirit</td> <td class="list list_sec">Progressive house</td> <td class="list list_sec" style="text-align:right">130</td> <td class="list list_sec" style="text-align:right; white-space:nowrap">-00:55</td> <td class="list list_sec">Mena Music</td> <td class="list list_sec" style="text-align:right; white-space:nowrap">2006-06</td> <td class="list list_sec" style="text-align:right; white-space:nowrap"><img class="none" src="gfx/obj.rating1.png" style="margin-left:3px"><img class="none" src="gfx/obj.rating1.png" style="margin-left:3px"><img class="none" src="gfx/obj.rating1.png" style="margin-left:3px"><img class="none" src="gfx/obj.rating1.png" style="margin-left:3px"><img class="none" src="gfx/obj.rating1.png" style="margin-left:3px"></td> </tr> <tr> <td class="list" style="padding-right:0px"></td> <td class="list" colspan="8" style="padding-bottom:40px; text-align:right"> <input type="button" value="Loose" onclick="this.form.act.value = 'loose'; this.form.submit()"> <input type="button" value="Edit" onclick="this.form.act.value = 'edit'; this.form.submit()"> <input type="button" value="Delete" onclick="if(confirm('Delete tracks?')) { this.form.act.value = 'delete'; this.form.submit(); }"></td></td> </tr> </table> </form>
06. april 2008 - 17:52
#9
hov.. min fejl.. her er den rigtige kode <form method="post" action="/trackcompiler.net/list.php?mode=comp&comp_id=1&limit=0"> <input type="hidden" name="_form" value="list"> <input type="hidden" name="act"> <input type="hidden" name="track_id"> <input type="hidden" name="track_pos"> <table style="margin:0 auto"> <tr> <td colspan="10"><div class="actions"><span class="marked">Actions:</span> <a href="java script:popup(1)">Print</a> </div> <div class="comp_id" style="float:right">1</div><div class="comp_headline">Electro house, Progressive house</div></td> </tr> <tr style="text-align:center"> <td class="list_top"></td> <td class="list_top"></td> <td class="list_top">Track</td> <td class="list_top">Genre</td> <td class="list_top">BPM</td> <td class="list_top">End</td> <td class="list_top">Label</td> <td class="list_top">Released</td> <td class="list_top">Rating</td> </tr> <tr> <td class="list list_sec" style="padding-right:0px"><input type="checkbox" name="id_arr[]" value="1069"></td> <td class="list list_sec" style="text-align:right"> <select onchange="this.form.act.value = 'order'; this.form.track_id.value = 1069; this.form.track_pos.value = this.value; alert(this.value); this.form.submit()"><option selected>1</option><option >2</option><option >3</option><option >4</option><option >5</option></select> </td> <td class="list list_sec"><span class="marked">Adam K & Soha</span><br>Twilight</td> <td class="list list_sec">Progressive house</td> <td class="list list_sec" style="text-align:right">128</td> <td class="list list_sec" style="text-align:right; white-space:nowrap">-00:05</td> <td class="list list_sec">Motivo</td> <td class="list list_sec" style="text-align:right; white-space:nowrap">2008-02</td> <td class="list list_sec" style="text-align:right; white-space:nowrap"><img class="none" src="gfx/obj.rating1.png" style="margin-left:3px"><img class="none" src="gfx/obj.rating1.png" style="margin-left:3px"><img class="none" src="gfx/obj.rating1.png" style="margin-left:3px"><img class="none" src="gfx/obj.rating1.png" style="margin-left:3px"><img class="none" src="gfx/obj.rating1.png" style="margin-left:3px"></td> </tr> <tr> <td class="list " style="padding-right:0px"><input type="checkbox" name="id_arr[]" value="1079"></td> <td class="list " style="text-align:right"> <select onchange="this.form.act.value = 'order'; this.form.track_id.value = 1079; this.form.track_pos.value = this.value; alert(this.value); this.form.submit()"><option >1</option><option selected>2</option><option >3</option><option >4</option><option >5</option></select> </td> <td class="list "><span class="marked">30hz feat. Yolanda</span><br>Daddio (Miles Dyson remix)</td> <td class="list ">Electro house</td> <td class="list " style="text-align:right">127</td> <td class="list " style="text-align:right; white-space:nowrap">-00:47</td> <td class="list ">LOT49</td> <td class="list " style="text-align:right; white-space:nowrap">2007-11</td> <td class="list " style="text-align:right; white-space:nowrap"><img class="none" src="gfx/obj.rating1.png" style="margin-left:3px"><img class="none" src="gfx/obj.rating1.png" style="margin-left:3px"><img class="none" src="gfx/obj.rating1.png" style="margin-left:3px"><img class="none" src="gfx/obj.rating1.png" style="margin-left:3px"><img class="none" src="gfx/obj.rating1.png" style="margin-left:3px"></td> </tr> <tr> <td class="list list_sec" style="padding-right:0px"><input type="checkbox" name="id_arr[]" value="1223"></td> <td class="list list_sec" style="text-align:right"> <select onchange="this.form.act.value = 'order'; this.form.track_id.value = 1223; this.form.track_pos.value = this.value; alert(this.value); this.form.submit()"><option >1</option><option >2</option><option selected>3</option><option >4</option><option >5</option></select> </td> <td class="list list_sec"><span class="marked">Abel The Kid & Raul Ortiz</span><br>Kraco</td> <td class="list list_sec">Progressive house</td> <td class="list list_sec" style="text-align:right">127</td> <td class="list list_sec" style="text-align:right; white-space:nowrap">-00:06</td> <td class="list list_sec">Set Me Free</td> <td class="list list_sec" style="text-align:right; white-space:nowrap">2008-01</td> <td class="list list_sec" style="text-align:right; white-space:nowrap"><img class="none" src="gfx/obj.rating1.png" style="margin-left:3px"><img class="none" src="gfx/obj.rating1.png" style="margin-left:3px"><img class="none" src="gfx/obj.rating1.png" style="margin-left:3px"><img class="none" src="gfx/obj.rating1.png" style="margin-left:3px"><img class="none" src="gfx/obj.rating1.png" style="margin-left:3px"></td> </tr> <tr> <td class="list " style="padding-right:0px"><input type="checkbox" name="id_arr[]" value="1373"></td> <td class="list " style="text-align:right"> <select onchange="this.form.act.value = 'order'; this.form.track_id.value = 1373; this.form.track_pos.value = this.value; alert(this.value); this.form.submit()"><option >1</option><option >2</option><option >3</option><option selected>4</option><option >5</option></select> </td> <td class="list "><span class="marked">16 Bit Lolitas</span><br>Back to one</td> <td class="list ">Progressive house</td> <td class="list " style="text-align:right">126</td> <td class="list " style="text-align:right; white-space:nowrap">-00:05</td> <td class="list ">Hope Recordings</td> <td class="list " style="text-align:right; white-space:nowrap">2007-04</td> <td class="list " style="text-align:right; white-space:nowrap"><img class="none" src="gfx/obj.rating1.png" style="margin-left:3px"><img class="none" src="gfx/obj.rating1.png" style="margin-left:3px"><img class="none" src="gfx/obj.rating1.png" style="margin-left:3px"><img class="none" src="gfx/obj.rating1.png" style="margin-left:3px"><img class="none" src="gfx/obj.rating1.png" style="margin-left:3px"></td> </tr> <tr> <td class="list list_sec" style="padding-right:0px"><input type="checkbox" name="id_arr[]" value="1417"></td> <td class="list list_sec" style="text-align:right"> <select onchange="this.form.act.value = 'order'; this.form.track_id.value = 1417; this.form.track_pos.value = this.value; alert(this.value); this.form.submit()"><option >1</option><option >2</option><option >3</option><option >4</option><option selected>5</option></select> </td> <td class="list list_sec"><span class="marked">Aaron McClelland</span><br>Spirit</td> <td class="list list_sec">Progressive house</td> <td class="list list_sec" style="text-align:right">130</td> <td class="list list_sec" style="text-align:right; white-space:nowrap">-00:55</td> <td class="list list_sec">Mena Music</td> <td class="list list_sec" style="text-align:right; white-space:nowrap">2006-06</td> <td class="list list_sec" style="text-align:right; white-space:nowrap"><img class="none" src="gfx/obj.rating1.png" style="margin-left:3px"><img class="none" src="gfx/obj.rating1.png" style="margin-left:3px"><img class="none" src="gfx/obj.rating1.png" style="margin-left:3px"><img class="none" src="gfx/obj.rating1.png" style="margin-left:3px"><img class="none" src="gfx/obj.rating1.png" style="margin-left:3px"></td> </tr> <tr> <td class="list" style="padding-right:0px"></td> <td class="list" colspan="8" style="padding-bottom:40px; text-align:right"> <input type="button" value="Loose" onclick="this.form.act.value = 'loose'; this.form.submit()"> <input type="button" value="Edit" onclick="this.form.act.value = 'edit'; this.form.submit()"> <input type="button" value="Delete" onclick="if(confirm('Delete tracks?')) { this.form.act.value = 'delete'; this.form.submit(); }"></td></td> </tr> </table> </form>
06. april 2008 - 18:37
#10
Hvis dine options ikke har en value-attribut er this.value tom. Det kan du jo se i Oles eksempel.
06. april 2008 - 18:55
#11
ok, men jeg troede ikke det var nødvendigt at sætte den :) altså hvis value var tom tog den bare selve tag'et?
06. april 2008 - 19:26
#12
Joh, men hvis jeg ikke siger til konen hun skal købe leverpostej, så gør hun det ikke. ;) Virker det så?
06. april 2008 - 21:33
#13
godt eksempel! :D jo, nu virker det smid et svar ole
06. april 2008 - 21:47
#14
Det er helt korrekt, at value attributten i følge HTML standarderne ikke er nødvendig - men her er der tale om scripting, hvor vi ovenikøbet eksplicit spørger, hvad elementets value er ;o)
Vi tilbyder markedets bedste kurser inden for webudvikling