【问题标题】:jQuery validate depending on checkbox statusjQuery 根据复选框状态进行验证
【发布时间】:2013-03-08 20:12:45
【问题描述】:

我在使用 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"))
                }
            }
        }
    }

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

【问题讨论】:

    标签: jquery jquery-validate


    【解决方案1】:

    试试这个:

    return !$("#AllDate").is(':checked');
    

    【讨论】:

    • 我试图输入整个函数。简洁 FTW。
    • 太好了,我提出了这个要求:“#AllDate:checked”,但这显然与我想要的完全相反。非常感谢
    【解决方案2】:

    这是为您量身定制的

    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
    
    }
    

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-02-16
      • 2011-06-27
      • 2021-12-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多