0

我在使用 jQuery validate.js 的表单中有三个字段:

<input type="text" id="StartDate" name="StartDate"><br />
<input type="text" id="EndDate" name="EndDate"><br />
<label for="AllDate"><input type="checkbox" name="AllDate" id="AllDate">All Dates</label>

除非选中#AllDate,否则我需要在提交时要求#StartDate。如果选中#AllDate,则不需要#StartDate

失败的尝试:

rules: {
        StartDate: {
            required: {
                depends: function(element) {
                    return (! $("input[type='checkbox']:checked"))
                }
            }
        }
    }

我也没有运气创建自定义验证规则。我正在寻找一种更好的方法,一种有效的方法!

4

2 回答 2

4

试试这个:

return !$("#AllDate").is(':checked');
于 2013-03-08T20:14:59.963 回答
0

这是为您定制的

if(($("#AllDate").is(':checked')) == true ){
    //Do what you want when all dates are checked

} elseif (($("#StartDate").val()) != "") {
    //Do what you want with StartDate

} else {
    //You have to enter a date

}

即时打字,看看这是否对你有帮助或给你一个基本的想法

于 2013-03-08T20:20:36.133 回答