Absendewert von Option-Einträgen im IE7
advance
- javascript
0 Cheatah0 MudGuard
1 planB0 Olaf Schneider0 advance
Im Moment raffe ich es einfach nicht mehr beim Auslesen von Options-Werten mit IE7. Was mit Opera und Firefox einwandfrei funktioniert will im IE7 einfach nicht! Wer hat mir bitte einen Tip?
Folgende Situation:
<form action="#">
<select name="Pizza" size="5" onchange="alert(this.options[this.options.selectedIndex].value)">
<option>Pizza Napoli</option>
<option>Pizza Funghi</option>
<option>Pizza Mare</option>
</select>
</form>
Bei Opera und FF werden die korrekten Werte angezeigt z.B. "Pizza Napoli". Beim IE7 wird nichts angezeigt! Wo klemmts denn?
NB. Ich möchte ganz bewusst NICHT mit value="Pizza Napoli" arbeiten. Das funktioniert in allen drei Browsern!
Gruss, advance
Hi,
<select name="Pizza" size="5" onchange="alert(this.options[this.options.selectedIndex].value)">
<option>Pizza Napoli</option>
<option>Pizza Funghi</option>
<option>Pizza Mare</option>
</select>
Bei Opera und FF werden die korrekten Werte angezeigt z.B. "Pizza Napoli". Beim IE7 wird nichts angezeigt! Wo klemmts denn?
ich sehe bei keiner der <option>-Elemente ein value-Attribut.
Cheatah
Hi,
<select name="Pizza" size="5" onchange="alert(this.options[this.options.selectedIndex].value)">
<option>Pizza Napoli</option>
<option>Pizza Funghi</option>
<option>Pizza Mare</option>
</select>
Bei Opera und FF werden die korrekten Werte angezeigt z.B. "Pizza Napoli". Beim IE7 wird nichts angezeigt! Wo klemmts denn?ich sehe bei keiner der <option>-Elemente ein value-Attribut.
Die sind implizit vorhanden:
Default-Wert für das value-Attribut von option-Elementen ist der Inhalt des Elements - siehe http://www.w3.org/TR/html4/interact/forms.html#adef-label-OPTGROUP (ist leider nur ein Anker in der Nähe, nicht direkt beim option-Element)
value CDATA #IMPLIED -- defaults to element content --
IE ist wohl zu doof dazu, das auch für Javascript verfügbar zu machen (beim Submit wird's richtig gemacht).
cu,
Andreas
hallo,
... alert(this.options[this.options.selectedIndex].value)
des Weiteren prüfe doch mal, wer die Eigenschaft selectedIndex hat
http://de.selfhtml.org/javascript/objekte/options.htm#selected_index
fg planB
Hallo,
Im Moment raffe ich es einfach nicht mehr beim Auslesen von Options-Werten mit IE7. Was mit Opera und Firefox einwandfrei funktioniert will im IE7 einfach nicht! Wer hat mir bitte einen Tip?
wenn der IE7 bei value nur auf das value-Attribut und nicht auf den Text zugreift und Du den Text haben möchtest, dann probiere mal:
alert(this.options[this.options.selectedIndex].firstChild.nodeValue)
(ungetestet)
Gruß
Olaf
NB. Ich möchte ganz bewusst NICHT mit value="Pizza Napoli" arbeiten. Das funktioniert in allen drei Browsern!
Besten Dank für eure Beiträge. Wie erwähnt, dass es mit den value-Angaben funktioniert, weiss ich. Ich wollte eben den Optionstext erhalten. Habe es unterdessen herausgefunden. So geht's und müsste ggf. in der SELFHTML-Doku auch erwähnt werden, da es neuerdings bei fehlenden value-Angaben nicht mehr automatisch durch den Optionstext ersetzt wird (zumindestens beim IE7).
<form action="#">
<select name="Pizza" size="5" onchange="alert(this.options[this.options.selectedIndex].text)">
<option>Pizza Napoli</option>
<option>Pizza Funghi</option>
<option>Pizza Mare</option>
</select>
</form>
Gruss, advance