在尝试bassistance.de的jQuery表单验证插件时,我遇到了一些有趣的东西。
如果我提供一个errorPlacement
选项,将错误附加到<div id="errContainer"></div>
中并将该div放置在<form>
之外,则每次验证时都会重复错误消息。然而,如果将errContainer div放在中 <form>
中,则一切正常。
示例HTML:
<form id="frmQuote" action="#" method="get">
<input type="text" name="txtQuote"/>
<button type="submit" id="btn">Send</button>
</form>
<div id="errContainer"></div>
插件选项:
errorPlacement: function(error, element){
error.appendTo($("#errContainer"));
}
//... further options
在这种情况下,当元素被验证时,错误会重复。如果我提交表单,将再次显示全部错误,低于前面的错误。
div的位置是依赖关系吗?还是我做错什么了?
谢谢你的帮助:)
发布于 2013-03-19 16:17:35
在这种情况下,您不应该使用errorPlacement
,而应该使用errorLabelContainer
,它将完全按照您的需要执行,并且正确地管理错误(即不重复它们):
$('#my-form').validate({
//other options, rules, etc
errorLabelContainer:'#errContainer'
});
https://stackoverflow.com/questions/5053124
复制相似问题