2010-12-13 57 views
2

J'ai un groupe de cases à cocher avec le même nom, ce dont j'ai besoin est quand je clique sur l'un d'eux, les autres cases doivent être désactivées. comment dois-je appliquer javascript dessus?Comment désactiver une autre case à cocher en cliquant sur une case à cocher?

<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"/> 

S'il vous plaît aider ...

+4

considèrent peut-être à l'aide des boutons radio? – yurib

+2

Probablement, vous avez besoin de boîtes RADIO –

+0

Shakti et Yurib .. U m'a juste éclaté .. :) –

Répondre

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> 

probablement vous voudrez les activer à nouveau lorsque l'utilisateur décocher la case

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

Vous pouvez faire

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

... si vous en avez vraiment besoin. Mais vous feriez mieux d'utiliser des boutons radio.

Try the demo

-1

code Essayez comme cette

<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

Ce n'est pas ce que l'OP a demandé. – batman