如何让验证器方法适用于Checkbox

时间:2012-01-11 21:27:56

标签: jquery

我正在尝试将验证方法添加到jquery Form validate

<script type="text/javascript">
    $.validator.addMethod(
            "FHM",
            function (value, element) {
                var StdHrs  =$('#frmStdHours').val();       
                var OTHrs   =$('#frmOTHours').val();        
                var TrvHrs  =$('#frmTravelHours').val();
                var SUM     =StdHrs+OTHrs+TrvHrs;
                if(SUM > 4)
                    return (value ==false);
                else
                    return (value == true);
            },
            "Please Change the actual hours to less than 4 or Uncheck  Four Hour Min."
    );
    $(document).ready(function(){
        $("#Form").validate({   
            rules: 
            {
                fld4HrMin:
                {
                    FHM:true
                }
            }
        });
    });
</script>

HTML

<form id="Form">
  <input type="checkbox" name="fld4HrMin" id="fld4HrMin">
  <input type="text"  size="5" name="frmOTHours" id="frmOTHours" value="0" >
  <input type="text"  size="5" name="frmTravelHours" id="frmTravelHours" value="0">
  <input type="text"  size="5" name="frmStdHours" id="frmStdHours" value="0" >
</form>

这不起作用---错误是始终显示错误消息

我想要做的是,如果三个输入框的总和大于4,如果复选框应该取消选中,如果它小于4,则应选中复选框。

1 个答案:

答案 0 :(得分:0)

我认为你有两个问题,

第一个,尝试像@Rocket那样做parseInt,

第二,你的逻辑有一些问题,如果你改成它,它按预期工作:

             if(SUM > 4)
                return false;
            else
                return true;