jquery change()警报一次点击会触发6次?
jQuery(document).ready(function($) { $('.c5sliderSelect').change(function() { alert('change clicked'); }); });
当我更改选择列表项时,我收到6个警报。 不知道为什么。 我只在标记中有一个带有此类名的元素,而选择列表有10个选项。
任何想法为什么警报会针对单个更改事件多次触发?
标记:
Custom Text Blog (10) Digital Cameras (3) GPS Systems (1) Healthy Herbal Teas (1) hidden (1) iPhone 4s (2) Samsung Galaxy (5) Smart Phones (5) Uncategorized (7)
我在这里要做的是当所选项目的值为“”时隐藏不相关的div
尝试使用除alert
其他内容 alert
对焦点有可怕影响,当然change
事件与focus
。 尝试console.log
或类似的。
例如,使用标记的此实例仅显示触发的单个change
事件。
描述
使用click()
绑定来捕获点击并使用$
或jQuery.noConflict()
来保证不与其他JavaScript库冲突。
样品
$(document).ready(function() { $('.c5sliderSelect').click(function() { alert('change clicked'); }); });
要么
$.noConflict(); jQuery(document).ready(function() { jQuery('.c5sliderSelect').click(function() { alert('change clicked'); }); });
更多信息
- jQuery.noConflict()
- jQuery.click()
更新
只是为了澄清click()
,使用click()
是一个鼠标事件,它不会使用键盘捕获更改。
这意味着对于您的jQuery脚本,元素存在6次。 您可能已经初始化了6次元素,或者在您的情况下,某些脚本更改了元素$(’。c5sliderSelect’),但上述脚本不足以确定这一点。
如果你想使用点击function:
$('.c5sliderSelect').click(function()
改变可能不是你正在寻找的正确事件……