【问题标题】:Extending Jquery validate to show/hide div or clear div after validate is ran运行验证后扩展 Jquery 验证以显示/隐藏 div 或清除 div
【发布时间】:2010-04-25 06:57:07
【问题描述】:

为了澄清,如何在 jquery 的验证插件运行其验证函数之前运行自定义函数(查看所有字段并显示错误消息)?

现在我所有的错误都输出到了一个 div。我想在它运行我的旧错误之前捕获验证事件并清除 div。然后 id 喜欢根据它是否有任何由 jquery 验证插件自动生成的标签来显示/隐藏该 div。除了弄清楚如何扩展事件、运行我需要的东西,然后调用验证函数之外,我什么都能做。谢谢!

【问题讨论】:

  • 能否将您的问题阐明为您希望实现的一系列有序步骤?

标签: jquery jquery-validate


【解决方案1】:

有 2 个属性可以直接执行此操作 errorContainererrorLabelContainer,例如,您希望根据是否存在 <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 选择器确定...它仍然会隐藏/显示基于任何错误并保持您的信息/帮助不变。

【讨论】:

  • 哦,天哪,伟大的 ive 蜜蜂使用错误放置并自己手动附加到我的错误 div。欣赏!
【解决方案2】:

您可以附加许多事件处理程序。 success & invalidHandler 似乎最适合您的要求,但errorPlacement 也可能有用。

更多信息请参见http://docs.jquery.com/Plugins/Validation/validate#toptions

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-30
    • 1970-01-01
    • 1970-01-01
    • 2010-11-14
    • 2017-11-27
    • 2013-05-05
    相关资源
    最近更新 更多