所需行为
我有一组type="number"
的输入字段,针对其中的每一个,我想使用JQuery' .change()
。
我的尝试
我想我会使用.each()
来浏览输入,并从那里使用.change()
。
我尝试使用$("input[type=number]").each().change(function() { ... })
,但这会在控制台中产生以下错误。
Uncaught TypeError: Cannot read property 'call' of undefined
我已验证前面的$("input[type=number]")
有效,并且正在获取我想要添加侦听器的输入字段。
问题
我不能像这样使用.each()
和.change()
吗?我甚至走在正确的轨道上吗?
答案 0 :(得分:1)
你不需要each
。 change
用于循环。直接使用$("input[type=number]").change(function() {
// do somthing on event
});
。
each
如果您想使用$("input[type=number]").each(function() {
$(this).change(function() {
// do something here
});
});
,也可以使用{{1}}。它与以前的结果相同,但代码更多,速度更慢,因为您不需要这里的循环。
{{1}}
答案 1 :(得分:0)
您必须将each()
与回调函数
<强> LIKE 强>
$("input[type=number]").each(function(){
$(this).change(function() { // Change Code goes here. });
});
注意强>
简单change
事件将适用于您的情况
$("input[type=number]").change(function() { ... });
答案 2 :(得分:0)
您只需使用
即可$("input[type=number]").change(function(e){
// What u want to do
});
jQuery已经使用循环将相同的事件处理程序应用于选择器的所有元素。当你必须手动遍历选择器的所有元素时,每个都被使用。
详细了解.each()https://api.jquery.com/jquery.each/
在此处详细了解.change()事件处理程序https://api.jquery.com/change/