为了澄清,如何在jquery的验证插件运行其验证功能之前运行自定义函数(这是查看所有字段并显示错误消息的内容)?
现在我将所有错误输出到div。我喜欢抓住验证事件并在运行旧错误之前清除div。然后id喜欢显示/隐藏该div,如果它有任何由jquery验证插件自动生成的标签。我可以做任何事情但是弄清楚如何扩展事件,运行我需要的东西,然后调用validate函数。谢谢!
答案 0 :(得分:1)
有两个属性可以直接errorContainer
和errorLabelContainer
执行此操作,例如,您需要隐藏<div>
和<div>
中的错误列表/根据是否存在显示,你会这样做:
$("#myform").validate({
errorContainer: "#myDivID",
errorLabelContainer: "#myDivID ul",
wrapper: "li",
//other options/rules...
});
The options page has more detail around this,但这是一个简单修复所需的一切,假设列表是你所拥有的,我不完全确定的问题。如果你想在你的div中说div,那就没有汗......只需将"#myDivID ul"
改为"#myDivID"
而"li"
改为"div"
......或者你想要的任何元素。
如果没有错误,上面会隐藏<div id="myDivID">
,如果有错误则显示它。即使你在div的顶部有一个描述/帮助消息或者某些东西,并且错误只是div的一部分,由errorLabelContainer
选择器确定...它仍将隐藏/显示如有任何错误,请保持信息/帮助不受影响。
答案 1 :(得分:0)
您可以附加许多事件处理程序。 success
&amp; invalidHandler
似乎最适合您的要求,但errorPlacement
也可能有用。
有关详细信息,请参阅http://docs.jquery.com/Plugins/Validation/validate#toptions。