答案事实证明非常简单。在我编写代码后的一段时间,另一位开发人员向导航栏添加了一个表单以进行登录。这时,代码...
$('form').validate().showErrors({"Amount":"Bleah"})
...现在影响了两种形式。由于登录表单是HTML中的第一个表单,因此我想首先处理它,然后抛出异常。通过将代码更改为...
$('#donateForm').validate().showErrors({"Amount":"Bleah"})
...工作正常。感谢所有人的答复。
我在使用jQuery.validate
向表单添加错误时遇到问题。如果我加载以下页面...
<form id="donateForm">
<div>
<div class="form-group row">
<label for="Amount" class="col-lg-2 col-form-label">Amount</label>
<div class="col-lg-10 input-group">
<div class="input-group-prepend">
<span class="input-group-text">
<i class="fa fa-pound-sign"></i>
</span>
</div>
<input type="text" id="Amount" name="Amount" class="form-control" value="" />
</div>
</div>
</div>
</form>
...然后从控制台调用以下内容...
$('form').validate().showErrors({"Amount":"Bleah"})
...然后出现以下错误...
未捕获的TypeError:无法读取未定义的属性'type'
在$ .validator.highlight(jquery.validate.js:344) 在$ .validator.defaultShowErrors(jquery.validate.js:912)
在$ .validator.showErrors(jquery.validate.js:546)
在匿名:1:22
我看了jQuery.validate.js
的第546行,就是这个...
this.defaultShowErrors();
...在showErrors
函数内部。这对我没有任何意义,但可能会帮助其他人找出问题所在。
有人有想法吗?我知道我没有给您太多帮助,但是由于showErrors
是jQuery.validate
的内置函数,所以我不确定还有什么要解决的。