我有一个限制复选框选择的JavaScript代码。
它占用了给定页面中的复选框数量,只允许选择其中的30%。
这是代码:
function chkcontrol(j) {
var length = document.forms['form1'].elements['item[]'].length;
var max = Math.round(length * 0.3);
var total = 0;
for(var i = 0; i < length; i++){
if(document.forms['form1'].elements['item[]'][i].checked){
total = total + 1;
}
if(total > max){
alert("MAX 33%") ;
document.forms['form1'].elements['item[]'][i].checked = false ;
return false;
}
}
}
它工作正常,但我想设置绝对最小保证数量的复选框可选。
在简单的文字中,这是我试图实施的规则:
示例:
页面中有7个复选框,只允许2个。 (限制为2,小于5的最小保证 - >脚本应该提高限制以允许5)
任何想法如何做到这一点? 在php中,一个简单的IF条件可以解决问题,但我不熟悉javascript!
答案 0 :(得分:2)
为什么不采用简单的方式:
var max = Math.max(5, Math.round(length * 0.3));
max
是5的最大值或计算出的30% - 这样,max
永远不会小于5。