我尝试控制jquery.validate错误。 我想在他为每个人创建的“跨度”中显示它们
不确定原因,但我的JS无法正常工作
这是我的HTML代码
<li>
<label for="name">name</label>
<span class="errmsg" for="name"></span>
<input type="text" name="name" />
</li>
<li>
<label for="age">age</label>
<span class="errmsg" for="age"></span>
<input type="text" name="age" />
</li>
这是我的JS代码
...
success: function(label) {
label.html(" ").addClass("checked");
},
wrapper: "div", // a wrapper around the error message
errorPlacement: function(error, element) {
element.parent().next('.errmsg').html(error);
}
});
答案 0 :(得分:0)
<span>
不适合您的遍历(相对于<input>
,它紧挨着元素,所以不是这样:
element.parent().next('.errmsg')
查找下一个<li>
类errmsg
,您需要这个:
element.closest('li').find('.errmsg')
//or just:
element.prev('.errmsg')
//or 20 other ways...
.closest('li')
对于以后的更改最灵活,.prev('.errmsg')
是最快的。