【问题标题】:jQuery Validate hidden field [duplicate]jQuery验证隐藏字段[重复]
【发布时间】:2017-02-06 04:15:49
【问题描述】:

当通过 Jquery Validator 提交表单时,我正在尝试验证元素的计数。原因是我们希望至少存在一张图片,但我们不直接上传它们,而是先显示预览。所以我需要以某种方式计算它们并验证至少存在一个。

我尝试使用隐藏字段as described here,但它根本不起作用。测试字段验证但由于某种原因我自己的规则甚至没有被触发。我的实现有什么问题?

隐藏字段技巧不再起作用,它似乎不再验证隐藏输入。

<form method="post" accept-charset="utf-8" id="submit-work-form" role="form" action="/" novalidate="novalidate">
<div class="form-group">
  <input type="text" required="true" name="title"/>
    <input type="hidden" name="image_count" required="required" data-rule-validcmsimagecount="true" aria-required="true">
  <div class="photos">
    <!-- containers go here -->
    </div>
</div>
<div class="submit"><input type="submit" class="btn btn-black btn-default" value="Submit"></div>
</form>

JS:

$.validator.addMethod("validcmsimagecount", function(value, element) {
  alert('Doesn\'t work');
        return $('.photo-container').length > 0;
    }, "You must add at least one image.");

    $('#submit-work-form').validate({
        submitHandler: function (form) {
            form.submit();
        }
    });

你也可以试试Jsfiddle。

【问题讨论】:

    标签: jquery jquery-validate


    【解决方案1】:

    这可能是 this post 的副本,但由于我更新了你的小提琴来修复它,我想我会发布作为答案。看起来您需要启用隐藏字段的验证并从隐藏字段中删除 required 属性。完成后,验证将运行,查看更新后的 fiddle here ,主要变化是添加了 ignore 属性:

    $('#submit-work-form').validate({
           ignore: [],
                submitHandler: function (form) {
                    form.submit();
                }
            });
    

    【讨论】:

    • 谢谢!我已经搜索了很长时间,但没有找到该选项。 :( 我同意这在技术上是重复的,但另一个问题的答案并不是最新的。请参阅我留下的评论。
    • 我刚刚更新了我的答案,我的意思是发布一个指向 this post 的链接作为副本
    • 哦,好的。我没有搜索过这个问题,因为它只是解决我真正问题的方法。
    【解决方案2】:

    Jquery 验证默认忽略隐藏字段,您可以通过设置忽略选项来强制验证隐藏字段,如下所示

    $('#myform').validate({
            ignore: [],
            // any other options and/or rules
        });
    

    jQuery Validate - Enable validation for hidden fields

    这是针对您的问题的修改示例 https://jsfiddle.net/9hoa1mrd/3/

    【讨论】:

    • 虽然如果您认为某个问题与另一个问题重复,这可能会回答该问题,但请将其标记为这样。不要回答指向另一个问题。谢谢
    猜你喜欢
    • 2012-12-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-06-21
    • 2017-08-01
    相关资源
    最近更新 更多