问题描述
如图:这个蓝色的提示信息,在红色错误信息出来还在。我想知道:怎么才能在红色出来后把蓝色替换掉。源码:<script type="text/javascript">$().ready(function() {$("#form").validate({rules: {user_name: {required: true,minlength: 3},user_pass: {required: true,minlength: 6},new_pass: {required: true,minlength: 6},new_pass2: {required: true,equalTo: "#new_pass"}},messages: {user_name: {required: "请输入用户名",minlength:"用户名不能少于3个字符"},user_pass: {required: "请输入原始密码",minlength:"密码应该大于6个字符"},new_pass: {required: "请输入新的密码",minlength:"新的密码应该大于6个字符"},new_pass2: {required: "请重复输入新的密码",equalTo: "请输入与上面相同的密码"}},errorPlacement: function(error, element) {error.appendTo( element.parent("td").next("td") );}});});</script> 问题补充:AngelAndAngel 写道
解决方案
出现这种问题的原因是你每次都是append在后面。解决办法如下: errorPlacement: function(error, element) { $(element.parent("td").next("td")[0]).html(""); error.appendTo( element.parent("td").next("td") ); } 也就是说大致思路是 先把td后面的清空 然后再append。兄弟你试试 别忘记采纳哦。
解决方案二:
替换的话你就removeClass("xx")然后addClass("yy");
解决方案三:
就是jquery对象 obj.removeClass("你的要清除的样式")
解决方案四:
errorPlacement: function(error, element) { error.appendTo( element.parent("td").next("td") ); } 这个地方改下errorPlacement: function(error, element) { error.appendTo(element.parent()); 直接把错误信息加在验证元素后·· }