看到这个题目,估计好多小伙伴要吐槽了,这么简单的一个东西也值得拿出来,之所以把这个jquery的方法拿出来,因为它是有故事的
相信不少搞前端的小伙伴都用过jquery.validate.js这个检验插件,我也占了一次原作者的光,在此感谢一下,出错后总希望显示一些信息出来告诉用户哪里出了问题,这个就涉及到validate这个插件的errorPlacement方法,这个方法一旦在初始化validate这个插件时被注册,那么出现问题时就会回调errorPlacement这个方法,下面是validate插件的实例代码(详见http://jqueryvalidation.org/validate)
Example: Use a table layout for the form, placing error messags in the next cell after the input.
1
2
3
4
5
6
7
8
9
10
11
12
|
|
问题就来了,这个例子是把每次失败信息记录到table的单元中,但我们很多时候需要的仅仅是显示最近一个错误信息,但是jquery的insertAfter会不断增加错误信息条数,因此我们需要在insertAfter调用前先清除这条记录,这就用到了jquery的remove方法:$(".help-block").remove(); 注意:help-block是初始化validate对象时设置的errorClass的名字,所以errorClass的名字不能与html中其他元素类名相同