Javascript复选框验证

时间:2010-07-29 22:53:06

标签: javascript jquery

我正在尝试将javascript验证添加到一堆复选框中,基本上我想要的是,一旦用户选择了3个复选框,它应该禁用除了勾选的三个复选框之外的所有复选框。

我怎么能这样做呢?

提前Thanx!

3 个答案:

答案 0 :(得分:2)

如果您选择其中的3个,则以下将禁用其余复选框,并且一旦您取消选中所选的三个复选框之一,也会启用它们。

$(':checkbox').click(
    function(){
        var selected = $(':checkbox:checked').length;
        if (selected == 3)
        {
            $(':checkbox:not(:checked)').attr('disabled',true);
        }
        else
        {
           $(':checkbox:not(:checked)').attr('disabled',false);
        }
    }
);

Live demo

答案 1 :(得分:0)

on onclick处理程序,当单击一个复选框时,如果取消选中它会使计数器加1,这会减少计数。提高计数后,测试是否为三。那么最简单的方法可能是保存三个复选框的ID或在上一步中保存它们。然后,仅当ids与保存的ID匹配时,才更改click事件以返回true。 抱歉,我现在没有时间实际编写任何代码。希望这会让你开始。

答案 2 :(得分:0)

的jQuery

$("#container :checkbox").click(function(){
   if ($("#container :checkbox").length >= 3) {
     $("#container :checkbox").attr("disabled", "disabled");
   }
});