使用jQuery Validation Plugin v1.13.1无验证

时间:2015-03-21 16:46:57

标签: jquery jquery-ui jquery-validate

这是我得到的错误:未捕获的TypeError:无法读取属性'元素'未定义的

我在这里遗漏了一些必须在我鼻子底下的东西。我无法在对话框中进行验证。我在寻找解决方案的过程中尝试了所有我发现的东西,但我无法弄清楚我做错了什么。我有一个jsfiddle https://jsfiddle.net/g6rnbtbj/21/代码示例。如果我取消注释下面的代码行,jQuery甚至不会显示对话框。

$('#business-partner-detail').validate();

有人请指出我做错了什么。我把头发拉出来,我再也不能失去了。

非常感谢任何见解。

1 个答案:

答案 0 :(得分:0)

  

“有人请指出我做错了什么。”

  1. 您的JavaScript控制台错误由$('#activity-event-dialog').valid()引起。您无法将.valid()方法附加到<div>。您只能将.valid()方法附加到<input><textarea><select><form>元素。在您的情况下,您希望测试<form>本身,因此您需要使用$('#business-partner-detail').valid()。如果没有先调用.valid()进行初始化,也无法致电.validate()

  2. 您无法注释掉.validate()方法,因为它是在表单上初始化插件所必需的。没有它,jQuery Validate将什么都不做。

  3. 您尚未声明任何验证规则,因此插件仍然无法执行任何操作。作为测试,我在下面的演示中将required="required"属性放在了<textarea>元素中。否则,您可以使用the rules option within the .validate() method声明规则。

  4. Your jsFiddle在“框架和扩展”部分中包含两个jQuery ...版本1.11.0,在“外部资源”部分中包含版本1.11.2。删除其中一个。

  5. 工作演示:https://jsfiddle.net/g6rnbtbj/25/