我有几个文本框,我使用jQuery .addClass("error")
赋予了属性。在提交时,我想检查是否有任何文本框具有类error
,因此会弹出一条消息,告诉用户确切地弹出了哪个文本框有错误。我正在使用这个:
if ($("*").hasClass("error") ){
}
使用*
,它会检查所有文本框以查看它们是否有错误。如何获取id
或任何指示哪个元素有错误?
答案 0 :(得分:4)
$('*')
选择器是一种非常低效的方法,因为它会逐字地返回DOM中的每个元素,这将很慢。相反,您只能检索具有input
类的error
元素,并循环遍历它们以获取所需的信息。试试这个:
$('#myForm').submit(function(e) {
var $inputs = $('input.error');
if ($inputs.length) {
e.preventDefault(); // stop the form submission
$inputs.each(function() {
console.log(this.id);
// work with the input here...
});
}
});