在使用jQuery验证插件时,我试图保留默认的错误消息位置和行为。当我设置change ()对象的任何属性时,默认行为似乎会发生变化。
例如。如果我简单地用必需的属性来修饰我的html输入,下面是结果:
HTML属性:
<input id="name" type="text" required/>

一旦我修改了validate对象的属性,这里就是我得到的:

我用来修改的代码:
$("[id$='emailForm']").validate({
debug: true,
rules: {
txtEmail: {
required: true,
email: true
}
}
});那么是什么给予了。为什么所有的格式和位置都会改变。什么是最简单的方法,我可以让它回到它的行为在默认情况下?
发布于 2013-11-21 18:54:54
你的代码:
<input id="name" type="text" required/>required是一个HTML5验证属性。您在第一张图片中看到的只是您的符合HTML5的浏览器正在做的事情.它与插件无关。除非调用.validate()方法来初始化插件,否则插件什么也不做。
调用.validate()方法后,您将初始化jQuery验证插件,然后它将接管该插件。第二张图片是插件的默认行为。
插件默认外观的演示:http://jsfiddle.net/6UAs3/
有关如何在使用jQuery验证插件:How to display messages from jQuery Validate plugin inside of Tooltipster tooltips?时实现所需的“外观”,请参见以下问题/答案
发布于 2013-11-21 18:44:58
当您第一次创建验证对象时,将其保存在一个变量中,然后使用它触发验证。
var validator = $("[id$='emailForm']").validate({
debug: true,
rules: {
txtEmail: {
required: true,
email: true
}
}
});
// Trigger validation at later point by invoking the valid method instead of validate
var isValid = validator.valid();https://stackoverflow.com/questions/20129078
复制相似问题