允许在复选框限制脚本中的最小选择

问题描述:

我有一个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; 
    } 
    } 
} 

它工作正常,但我想设置一个绝对的最低保证数量的复选框选择。

在简单的文字,这里就是我想实现的规则:

  • 允许复选框的30%,如果30%的限制是允许小于5个复选框 - >允许5

例如:

7个复选框在页面中,只允许2个。 (限制为2,即小于5的最小保证 - >脚本应该提高限制以允许5)

任何想法如何做到这一点? 在一个简单的IF条件将解决这个问题,但我不熟悉JavaScript!

为什么不接受简单的东西,因为这去:

var max = Math.max(5, Math.round(length * 0.3)); 

max是最大的5或计算出的30% - 这样,max是从来没有少于5

+0

简单而有效,谢谢 :) – 2012-04-14 10:35:44