【发布时间】:2014-09-11 15:47:05
【问题描述】:
我有一个相对简单的表单,我需要有条件地提交,并在 HTML5 验证未通过时显示验证消息。
我正在使用 jQuery Validate,这看起来不错,但我想要的只是
if( $('#myForm').valid()) {...}
jQuery Validate 似乎决心将错误消息放入 DOM 并阻止浏览器的本机消息,这是我不想要的。我不知道我是瞎还是傻(可能两者兼而有之),但我不知道如何阻止它这样做。
这就是我现在拥有的:
// call validate to set the form up for validation
$(this).closest('form').validate();
if ($(this).closest('form').valid()) {
// do some stuff
} else {
// show error messages via the browser (need to pretend to click a button for this)
$(this).closest('form').find(':submit').click();
}
【问题讨论】:
-
如果您不希望插件显示错误或使用 css 隐藏错误,可以覆盖
errorPlacement选项 -
我可以用 CSS 隐藏它们,但它似乎覆盖了浏览器的错误消息(至少在 chrome 中)
-
可以在表单中添加
novalidate。从未尝试过使用验证插件覆盖 html5。不确定它是否有 html5 覆盖,其他一些插件有 -
是的,@charlietfl,这个插件动态地将
novalidate属性添加到form。 -
啊哈!它是。希望有一种干净的方式/选项来禁用此功能。宁愿它也不要向 DOM 中插入东西。
标签: javascript jquery html validation jquery-validate