jquery.validate 当验证正确之后为什么错误信息没有移除?

在错误信息外面还包裹了一些标签具体代码<scripttype="text/javascript">$(document).ready(function(){check()... 在错误信息外面还包裹了一些标签 具体代码

<script type="text/javascript"> $(document).ready(function () { check(); }); function check(){ $("#signupForm").validate({ success:function(lable){ lable.parents(".tip").remove(); }, ignore:".ignore", errorPlacement: function (error, element) { error.appendTo(element.parent()); $(error).wrap('<div class="tip"></div>'); $(error).wrap('<span class="tip-text"></span>'); $(error).before('<h5>系统提示</h5>');
$(error).parent(".tip-text").before("<em></em>"); }, rules: { username: { digits:true, rangelength: [ 2, 7 ] } }, //校验提示信息 messages: { username: { required: "请输入用户名", rangelength: "用户名长度必须为{0}到{1}个字符或汉字" } } }); } </script>
展开
 我来答
  • 你的回答被采纳后将获得:
  • 系统奖励15(财富值+成长值)+难题奖励20(财富值+成长值)
惊叹为观止
2014-12-23 · 超过35用户采纳过TA的回答
知道答主
回答量:69
采纳率:0%
帮助的人:28万
展开全部
success:function(lable){lable.parents(".tip").remove(); },
你在这里打个断点,查看下label.parents('.tip')是否是包裹你错误消息的那个容器。这样也能看出来success里面的代码是否被执行到了。
还有你这种写法是不太合理的,既然要集中显示错误,应该用errorContainer啊,为什么要自己去写
errorPlacement: function (error, element) {
error.appendTo(element.parent());
$(error).wrap('<div class="tip"></div>');
$(error).wrap('<span class="tip-text"></span>');
$(error).before('<h5>系统提示</h5>');
$(error).parent(".tip-text").before("<em></em>");
},
这样在验证多个input时,岂不是会生成一堆:<div class="tip"></div>,而success你又该隐藏哪个input控件的错误消息呢?
追问
不是要集中显示错误,只是在错误信息外面加些修饰
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式