2009-10-13 2 views
1

i ont vérifier tableau de boîte comme celledéfinir le nombre total de case à cocher dans le tableau

for($j=1;$j<=10;$j++)  
    <input type="checkbox" name="chkLimit[]" id="chkLimit_<?php echo $j;?>" value="<?php echo $j;?>" /> 

i obtenu 10 Cochez la case

et j'écrire le code jquery comme ça ...

$(document).ready(
    function(){ 
    setLimitSelection(); 
    } 


); 


    function setLimitSelection(){ 
    $('input[name="chkLimit[]"]').limitSelection(
     { 
      // number of items to limit to 
      limit: 4, 
      // on error, do this 
      onfailure: function (n){ 
       $("#idCheckboxMsg").html(
        "You can not select more than " + n + " items." 
       ); 
       return false; 
      }, 
      // on success, do this 
      onsuccess: function (n){ 
       $("#idCheckboxMsg").html(""); 
       return false; 
      } 
     } 
    ); 
    $('select[name="selLimit[]"]').limitSelection(10); 
} 

$("input.chkLimit").click(function() { 
    var numSelected = $("input.chkLimit[]:checked").length; 
    var numLeft = 10 - parseInt(numSelected); 
    $("#statusBox").html("You have "+numSelected+" CD's selected.<br>You have "+numLeft+" selections left."); 
}); 

ce que je veux est: l'utilisateur ne peut pas sélectionner plus de 4 cases à cocher

merci

+0

Quel est le problème? – powtac

Répondre

0

Je n'ai pas testé, mais il devrait faire le travail pour vous:

$(function(){ 
    $("#myCheckboxes input[type='checkbox']").change(
     var checked = $("#myCheckboxes input[type='checkbox'][checked]").length; 
     if(checked == 4){ 
      $("#myCheckboxes input[@type='checkbox']").not(":checked").attr('disabled',true); 
     }else{ 
      $("#myCheckboxes input[@type='checkbox']").not(":checked").attr('disabled',false); 
     } 
    ) 
}); 

Chaque fois que l'état coché d'un changement de case à cocher, il regarde combien de cases sont cochées. S'il y en a 4, il désactive les cases non cochées, sinon il les active. Cela suppose qu'ils vivent tous dans un conteneur appelé #myCheckboxes

+0

non, cela ne fonctionne pas .... – air

+0

vous allez devoir me donner un peu plus d'informations que si vous souhaitez que je continue à aider. Avez-vous des erreurs? – inkedmn

0

On dirait que @inkedmn a eu quelques erreurs de syntaxe, mais la boîte de commentaire n'est pas suffisante pour élaborer. Donc, voici ce que je pense qu'il essaie de faire:

$(function(){ 
    $("#myCheckboxes input[type='checkbox']").change(function() { 
     var checked = $("#myCheckboxes input[type='checkbox']:checked").length; 
     if(checked == 4){ 
      $("#myCheckboxes input[type='checkbox']") 
       .attr('disabled',true) 
       .filter(':not(:checked)') 
       .attr('disabled',false); 
     } else { 
      $("#myCheckboxes input[type='checkbox']").attr('disabled',false); 
     } 
    ) 
}); 

Cela devrait être fait pour vous.

+0

de travail, merci seulement un problème vérifié aussi devenir désactiver ... – air

+0

Oups, j'ai eu une faute de frappe. Essayez la nouvelle version. – KyleFarris

Questions connexes