Moin!
function zahl() {
if (document.getElementById("clicked").value = "0"){
document.getElementById("clicked").value = "1"}else {document.getElementById("clicked").value = "0"}
}
1. Wenn die Zuweisung des Wertes 1 zu document.getElementById("clicked").value klappt, dann wird
document.getElementById("clicked").value = "1" gesetzt. Also immer, vorausgesetzt document.getElementById("clicked") ist ein gültiges Objekt und hat die gültige Eigenschaft "value".
Du hast einen Typo: Im Vergleich sind zwei Gleichheitszeichen nötig, sonst machst Du eine Wertzuweisung und wenn die funktioniert wird "wahr" zurück gegeben. Das wolltest Du aber nicht.
2. Eine Zelle in einer Tabelle hat aber nicht die Eigenschaft "value". Du kannst aber "innerHTML" verwenden. Ich habe mit der alternativen Eigenschaft "innerText" schlechte Erfahrungen. (Firefox)
Korrekturvorschlag (ungetestet)
function zahl() {
if (document.getElementById("clicked").innerHTML == "0"){
document.getElementById("clicked").innerHTML = "1";
} else {
document.getElementById("clicked").innerHTML = "0";
}
}
Alternativer Vorschlag (als Einzeiler, ebenfalls ungetestet):
document.getElementById("clicked").innerHTML = (var Ergebnis = (document.Formular.Eingabe.value == "0") ? "1" : "0");
Weitere Informationen findest Du http://de.selfhtml.org/javascript/sprache/bedingt.htm@title=hier.
MFFG (Mit freundlich- friedfertigem Grinsen)
fastix