PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Checkbox


ttmobil
21.04.2010, 17:43:58
Hi!

Hab in einer PHP Datei drei Textfelder die durch eine Checkbox ( checked ) aktiviert
werden sollen. Leider funzt das nicht so recht, weil immer wenn ich die Checkbox anklicke
werden die Felder deaktiv, es soll aber genau anders herum sein.

Kann mir jemand den "richtigen" Code sagen! Stehe aufm Schlauch!

<script type='text/javascript'>
function machEs() {
var felder = new Array('mann_2', 'mann_3', 'mann_4');
var i;

for (i=0; i<felder.length; i++) {
document.getElementById(felder[i]).disabled=document.getElementById('klickding').checked;
}
}
</script>

<input type="text" name="mann_2" id='mann_2'><br>
<input type="text" name="mann_2" id='mann_3'><br>
<input type="text" name="mann_2" id='mann_4'><br>

<input type='checkbox' id='klickding' onclick='machEs();'>

Ckaos
22.04.2010, 10:25:00
Hi

<script type='text/javascript'>
function machEs() {
var felder = new Array('mann_2', 'mann_3', 'mann_4');
var i;

for (i=0; i<felder.length; i++) {
document.getElementById(felder[i]).disabled=document.getElementById('klickding').checked;
}
alert(document.getElementById('klickding').checked);
}
</script>

<input type="text" name="mann_2" id='mann_2'><br>
<input type="text" name="mann_2" id='mann_3'><br>
<input type="text" name="mann_2" id='mann_4'><br>

<input type='checkbox' id='klickding' onclick='machEs();'>
Schau dir das Ergebnis mal an, dann wirst du erkennen
das du den zurückgegebenen wert der Checkbox nur
negieren (http://de.wikipedia.org/wiki/Negation#Logik)musst.

Ich geb dir den Tip, schau dir jQuery an, da kannst du ganz easy per
css - klasse auf Elemente zugreifen. ID's gerade wenns um mehrere geht
empfinde ich da als Krücke.
jQuery Bsp.
<script src="http://code.jquery.com/jquery-latest.pack.js" type="text/javascript" ></script>
<script type="text/javascript">
$(function() {
$("#klickding").change(
function() {
if($(this).attr("checked")){
$("[class*='toggle']").attr("disabled",true);
}else{
$("[class*='toggle']").attr("disabled",false);
}
}
);
});
</script>
<input class="toggle" type="text" name="mann_2" id='mann_2'><br>
<input class="toggle" type="text" name="mann_2" id='mann_3'><br>
<input class="toggle" type="text" name="mann_2" id='mann_4'><br>

<input type='checkbox' id='klickding'>

mfg

Ckaos