ajax调用成功的success函数中添加的<span>元素,用jquery选择器获取不到!
用户注册表单,ajax验证用户名是否已经注册,若已经注册,则在$.ajax的success函数中,append一个<span>元素。<spanclass='formtip...
用户注册表单,ajax验证用户名是否已经注册,若已经注册,则在$.ajax的success函数中,append一个<span>元素。<span class='formtips onError'>"+errorMsg+"</span>
然后最后在提交之前判断class为“onError”的元素,不为0则不能提交。
//获取class为onError的元素,表明提示错误元素
var numError=$(".onError").length;
alert(numError);
if(numError){//非0为真,即还有错误信息时不允许提交
return false;
}
});
可是结果如图:
总是获取不到第一个错误提示信息。求高手赐教! 展开
然后最后在提交之前判断class为“onError”的元素,不为0则不能提交。
//获取class为onError的元素,表明提示错误元素
var numError=$(".onError").length;
alert(numError);
if(numError){//非0为真,即还有错误信息时不允许提交
return false;
}
});
可是结果如图:
总是获取不到第一个错误提示信息。求高手赐教! 展开
3个回答
展开全部
我想说。你选择器用错了。
alert($('span[class*="onError"]').length);
查找span标签,class属性中含有字符“onError”的span标签,都将被选中。
”*=“类似数据库中的“like”关键字,模糊查询。
更多追问追答
追问
我哪里是这样写的。
追答
$(".onError").length;// 你写的,只能查到类名是onError的元素。
$('span[class*="onError"]').length;// 改进的。能查到类名中含有onError的span标签的元素。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你好!
你说的“总是获取不到第一个错误提示信息”是什么意思?
var numError=$(".onError").length; //这个不是获取提示信息个数么?
alert(numError);//打印出来的也是这个个数
更多追问追答
追问
是啊,你看上面图片有2个错误信息,而这里alert的却是1啊!就是“用户名已被注册”没有获取到啊!这个怎么办么?
追答
你确定是“用户名已被注册”没有获取到么?
最好是将span元素都打出来,看看都打出来啥?
你的用户名验证是在提交之前做的么?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你不用append以后再去dom中找
你对success的参数进行 $(data).find(".onError")操作就好了呀。
你对success的参数进行 $(data).find(".onError")操作就好了呀。
更多追问追答
追问
success返回的参数不是元素,只是写入的text。而且,我要找的是from表单中所有.onError的元素。
追答
你的dataType是html吗?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询