2010-12-13 24 views
2

Ich habe eine Gruppe von Kontrollkästchen mit dem gleichen Namen, was ich brauche ist, wenn ich einen von ihnen anklicke, andere Kontrollkästchen müssen deaktiviert werden. Wie sollte ich Javascript darüber anwenden?Wie deaktiviert man andere Kontrollkästchen beim Klicken auf ein Kontrollkästchen?

<input type="checkbox" name="finallevelusers[]" value="1"/> 
<input type="checkbox" name="finallevelusers[]" value="1"/> 
<input type="checkbox" name="finallevelusers[]" value="1"/> 
<input type="checkbox" name="finallevelusers[]" value="1"/> 

Bitte helfen ...

+4

betrachten vielleicht Radiobuttons? – yurib

+2

Wahrscheinlich brauchen Sie RADIO-Boxen –

+0

Shakti und Yurib .. U nur busted mich .. :) –

Antwort

3
<script type="text/javascript"> 
for (i=0; i<document.test.finallevelusers.length; i++){ 
if (document.test.finallevelusers[i].checked !=true) 
    document.test.finallevelusers[i].disabled='true'; 
} 
</script> 

wahrscheinlich wollen Sie sie wieder aktiviert, wenn der Benutzer das Häkchen entfernen

for (i=0; i<document.test.finallevelusers.length; i++){ 
    if (document.test.finallevelusers[i].disabled ==true) 
     document.test.finallevelusers[i].disabled='false'; 
    } 
2
<script type="text/javascript"> 
    function disableHandler (form, inputName) { 
    var inputs = form.elements[inputName]; 
    for (var i = 0; i < inputs.length; i++) { 
    var input = inputs[i]; 
    input.onclick = function (evt) { 
    if (this.checked) { 
    disableInputs(this, inputs); 
    } 
    else { 
    enableInputs(this, inputs); 
    } 
    return true; 
    }; 
    } 
    } 

    function disableInputs (input, inputs) { 
    for (var i = 0; i < inputs.length; i++) { 
    var currentInput = inputs[i]; 
    if (currentInput != input) { 
    currentInput.disabled = true; 
    } 
    } 
    } 

    function enableInputs (input, inputs) { 
    for (var i = 0; i < inputs.length; i++) { 
    var currentInput = inputs[i]; 
    if (currentInput != input) { 
    currentInput.disabled = false; 
    } 
    } 
    } 
    </script> 
    </head> 
    <body> 
    <form name="aForm" action=""> 
    <p> 
    <label> 
    <input type="checkbox" name="finallevelusers[]" value="1"> 
    </label> 
    <label> 

    <input type="checkbox" name="finallevelusers[]" value="1"> 
    </label> 
    <label> 

    <input type="checkbox" name="finallevelusers[]" value="1"> 
    </label> 
    </p> 
    </form> 
    <script type="text/javascript"> 
    disableHandler(document.forms.aForm, 'finallevelusers[]'); 
    </script> 
5

Sie tun konnte

$('input').attr('disabled',true); 

... wenn Sie es wirklich brauchen. Aber Sie könnten besser mit Radiobuttons arbeiten.

Try the demo

-1

Try Code wie dieser

<script> 
      function uncheck(){ 
       for(var ii=1; ii<=4; ii++){ 
        if(document.getElementById("q6_"+ii).checked==true){ 
         document.getElementById("q6_"+ii).checked=false; 
        } 
       } 
      } 
     </script> 
+0

Das hat das OP nicht gefragt. – batman

Verwandte Themen