我有一点问题。我想使用通用函数为表单上的所有输入验证表单。该函数处理不同类型输入的复杂性等。
对该函数的调用如下所示:
$(":input[type='text']").blur(function() {validateMe($(this).attr("id"), button_arr);});
这里的问题是$(this)
似乎只适用于“模糊”的第一个元素,因此在第一个元素之后发生的任何模糊事件会使第一个选择器模糊,如果这有任何意义吗?
button_arr
部分无关紧要。
有没有办法将$(this)
应用于$(":input[type='text']")
指定的集合中的每个元素?
感谢您的帮助!
答案 0 :(得分:4)
我猜你的意思是:
$("input[type='text']").each(function () {
$(this).blur(function () {
validateMe(this.id, button_arr);
});
});
答案 1 :(得分:-1)
我想
$("input[type='text']").blur(function() {
validateMe(this.id, button_arr);
});
也应该这样做吗?为什么在选择器中使用冒号?我认为它会返回一组。所以你可以摆脱不必要的每个循环
编辑:
我猜您的意思是选择器“:input”,而不是“:input [type ='text']”?因为您的选择器只选择输入字段,并将属性“type”设置为“text”。也许你刚刚得到其中一个? “textarea”,“button”和“select”没有值为“text”的属性“type”