首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >带有显示的jQuery验证器插件:无表单元素

带有显示的jQuery验证器插件:无表单元素
EN

Stack Overflow用户
提问于 2018-02-26 00:54:13
回答 2查看 0关注 0票数 0

我正在使用这里找到的验证器插件来验证表单。

我遇到的问题是,如果我将以下内容放在表单输入元素中,验证将失败:

代码语言:javascript
复制
<div style="display:none;"><input type="text" name="test" /></div>

我需要这个,因为我使用其他UI控件图层作为输入元素,并且不希望它们可见。

它适用于内联和块内容,但我需要隐藏它。无论如何要解决这个问题吗?

我主要通过django验证选择字段(即:{{form.select_option_element}})

非常有效:

代码语言:javascript
复制
<div style="display:none;">
    {{form.select_option_element}}
</div>

不起作用

发布后,我似乎解决它:

代码语言:javascript
复制
<div style="visibility: hidden; height: 0;">
     {{form.select_option_element}}
</div>

然后它允许我验证该字段。

EN

回答 2

Stack Overflow用户

发布于 2018-02-26 09:19:59

jQuery验证的1.9.0更改日志:

  • 修正#189 - :隐藏元素现在被默认忽略

要重新打开它,只需执行以下操作:

代码语言:javascript
复制
$(document).ready(function(){    
    $.validator.setDefaults({
        ignore: []
    });
});

确保在代码中调用实际验证插件之前出现此消息。

我希望这有帮助!

票数 0
EN

Stack Overflow用户

发布于 2018-02-26 10:23:06

我用这种方式:

代码语言:txt
复制
$(document).ready(function () {

    var $form = $("#some-form");

    $form.validate().settings.ignore = []; // ! Say to validator dont ignore hidden-elements on concrete form.

    $('#button-send').click(function () {
        if ($form.valid()) { .. }
    });

    // !! apply plugin's initializers which will hide origin elements (it can be CLEditor or Choosen plugins)
});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/-100007428

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档