Hallo,
folgendes Problem:
Mein Script soll mir den Wert eines select-one Feldes zurückgeben, gibt es kein Value, dann soll es statt dessen den Text ausgeben. So weit, so gut.
Aber:
Wenn ich explizit ein value="" angebe, soll eben NICHT der Text ausgelesen werden. Im Prinzip soll es eben so funktionieren, wie PHP mir die Variablen übermittelt.
Leider funzt auch ein (myIndex.value !== "") oder ein isSet() in javascript nicht, zumindest habe ich bisher nichts vergleichbares gefunden.
Hier ein Beispiel zum Testen.
<html>
<head>
<script>
function checkForm() {
var myIndex = document.formular.mySelect.options[document.formular.mySelect.selectedIndex];
myValue = (myIndex.value) ? myIndex.value : myIndex.text;
alert("Gewählt: "+myValue);
}
</script>
</head>
<body>
<form name="formular" onSubmit="checkForm(); return false;">
<select name="mySelect">
<option value="" selected>Bitte wählen</option>
<option value="Typ A">A</option>
<option>B</option>
</select>
<input type="submit" value="Abschicken">
</form>
</body>
</html>
Bitte keine Workarounds mit if(myValue == "Bitte wählen") ... oder ähniches.
Vielen Dank
Chris