Tobias H.: checkboxen

Beitrag lesen

moin Tobias :)

ich habe ca. 30 checkboxen in einer reihe gesetzt. hinter jeder chechbox steckt eine verfügbarkeit. jetzt möchte ich vor diese reihe ein textfeld schalten, bei dem nach eingabe einer zahl (z.b. 3) alle checkboxen bei denen die verfügbarkeit kleiner als 3 ist mit einem bild ( zum signalisieren dass nichts verfügbar ist ) ersetzt werden.

Wie kann man das am besten realisieren?

Hier ein beispielhafter codeschnipsel mit einer checkbox:

<input type="checkbox" name="<? echo $day; ?>" value="...">

jetzt das versteckte feld in dem bei value die verfügbarkeit gesetzt ist:

<input type="hidden" name="<? echo $day; ?>" value="3">

1.musst du natürlich den Wert auslesen, der in das Textfeld geschrieben wurde.
2. prüfst du ob dort eine Zahl eingegeben wurde.
3. Gehst du alle Elemente deiner Form mit einer For-Schleife durch.
4. Prüfst du in der Schleife, ob es sich beim aktuellen Element um ein Hidden-Field handelt
5. Wenn das der Fall ist, ermittelst du deinen Wert daraus und entscheidest ob die Checkbox, die sicherlich vor dem hidden field sitzt, ersetzt werden soll (Achtung! Hier vom [parent ausgehen - nicht von der checkbox).

Alles klar soweit?
liebe Grüße aus Berlin
lina-

Hallo,
ich habe jetzt folgendes script beispielhaft geschrieben:

<SCRIPT LANGUAGE="JavaScript">
function check_checkboxen(){
var zahl = document.blubb.zahl.value;
if (isNaN(zahl)) {
 alert(zahl + " ist keine Zahl!");
}else{
 for (var i = 1; i <= document.getElementsByName("verf").length; ++i) {
  var frei = document.getElementsByName("verf")[i](http://de.selfhtml.org/javascript/objekte/node.htm#parent_node).value;
  document.blubb.statusmeldung.value = frei;
  var prev_node = document.getElementsByName("verf")[i].previousSibling.nodeName;

}
  }
  return(true);
}
</SCRIPT>
</head><body>

<form name="blubb" action="">
<br><br>
Bitte einen Wert eingeben
<input type="text" name="zahl" value="0" onkeypress="return check_checkboxen()">
<br><br>
<textarea name="statusmeldung"></textarea>
<br>
<input type="checkbox" name="1" value="1">
<input type="hidden" name="verf" value="1">
<br>
<input type="checkbox" name="2" value="2">
<input type="hidden" name="verf" value="2">
<br>
<input type="checkbox" name="3" value="3">
<input type="hidden" name="verf" value="3">
<br>
<input type="checkbox" name="4" value="4">
<input type="hidden" name="verf" value="4">
</form>
</body>
</html>

wie kann ich jetzt die checkbox mit z.B. einem Bild ersetzen?

gruß,
tobias