Javascript fehler Button Disable?
Das Script erstellt 3 Button, 2 Zum Aktivieren und zum Deaktivieren. Zu Testzwecken noch ein simples Mini-programm. Aber irgendwie funktioniert das nicht.
<button onclick="locker(1)">Lock</button>
<button onclick="locker(2)">Unlock</button>
<input type="button" onclick="tellMessage()" id="btn01" value="OK">
<script>
var mtd = ("")
var a =
function locker(a) {
if (a = 1){
document.getElementById("btn01").disabled = true;
}
else
if (a = 2){
document.getElementsById("btn01").disabled = false
}
}
function tellMessage() {
mtd = prompt("Please enter message to display", "Your message...")
alert(mtd)
}
</script>
Gibts eine Fehlermeldung?
Nein.Bei mir nicht.
1 Antwort
1) Die Funktion getElementsById gibt es nicht. Entferne das s aus dem Namen.
2) Im Kopf deiner if-Anweisungen nimmst du keinen Vergleich mit der Zahl vor, sondern du weist sie der Variable zu.
Das heißt, a bekommt erst den Wert und danach wird geprüft, ob dieser Wert wahr (also ungleich 0) ist. Das passt, daher wird diese Bedingung immer erfüllt.
Verwende den Vergleichsoperator (===) für die Vergleiche.
3) Die Funktionsdefinition für locker wird einer Variable zugewiesen. Sinn ergibt das nicht, die Funktion wird daraufhin auch nicht gefunden. Entferne die Variablendeklaration von a mitsamt des Zuweisungsoperators. Nur der rechtsseitige Teil dieser Anweisung (die Funktionsdefinition) darf bleiben.