Poszukuje rozwiazania jak zrobic limit zaznaczonych checkboxów.
Znalażłem gdzies tutaj n forum ozwiazanie ale nie działa.
Prosze o pomoc
$.fn.limit = function(n) { var self = this; this.click(function(){ (self.filter(":checked").length==n)? self.not(":checked").attr("disabled",true).addClass("alt"): self.not(":checked").attr("disabled",false).removeClass("alt"); }); } $("input:checkbox").limit(3); }
<form name="formularz"> <input type="checkbox" name="pies[]"> <input type="checkbox" name="pies[]"> <input type="checkbox" name="pies[]"> <input type="checkbox" name="pies[]"> <input type="checkbox" name="pies[]"> <input type="checkbox" name="oko[]"> <input type="checkbox" name="oko[]"> <input type="checkbox" name="oko[]"> <input type="checkbox" name="oko[]"> </form>
<html> <head> </head> <script> function sprawdz_ile_zaznaczonych(){ var ile = 0; for(var i=0; i<document.formularz.length; i++){ if((document.forms.formularz.elements[i].type)=="checkbox"){ if(document.forms.formularz.elements[i].checked) ile++; } } return ile; } function deaktywacja(){ if(sprawdz_ile_zaznaczonych()>=2){ for(var i=0; i<document.formularz.length; i++){ if((document.forms.formularz.elements[i].type)=="checkbox"){ if(!document.forms.formularz.elements[i].checked) document.forms.formularz.elements[i].disabled=true; } } } else{ for(var i=0; i<document.formularz.length; i++){ if((document.forms.formularz.elements[i].type)=="checkbox") document.forms.formularz.elements[i].disabled=false; } } } </script> <body> <form name="formularz"> <input type="checkbox" name="pies[]" onclick="deaktywacja();"> <input type="checkbox" name="pies[]" onclick="deaktywacja();"> <input type="checkbox" name="pies[]" onclick="deaktywacja();"> <input type="checkbox" name="pies[]" onclick="deaktywacja();"> <input type="checkbox" name="pies[]" onclick="deaktywacja();"> <input type="checkbox" name="pies[]" onclick="deaktywacja();"> <input type="checkbox" name="oko[]"> <input type="checkbox" name="oko[]"> <input type="checkbox" name="oko[]"> <input type="checkbox" name="oko[]"> <input type="checkbox" name="oko[]"> </form> </body> </html>