jQuery单选按钮的onchange事件不起作用。
jQuery单选按钮的onchange事件不起作用。
我看到了这个问题和这个fiddle。
我的Fiddle在这里。这是一个简单的问题,为什么它不起作用?
#html
一些有意义的值
另一个值
#js
$("input[name='article[format]']:radio").change(alert('hola'));
编辑:
基于大家的需求,我做了这个:
.change(function(){alert('hola')});
结果:不起作用。
编辑2:(为什么我有这个问题)
所以,JS-Fiddle将你的js代码包裹在iframe的head中,这是你的Result部分。对于jQuery选择器(或任何操作DOM的js代码)正常工作,它必须在DOM元素呈现之后执行。因此,将代码包裹在ready和/或在body结束之前,是确保你的查询选择器不返回undefined的最安全的方法。
问题出现的原因是使用了不正确的语法来绑定radio按钮的change事件。解决方法是使用正确的语法来绑定事件。
问题的原因是代码中使用了错误的语法来绑定radio按钮的change事件。正确的语法应该是使用`.on()`方法来绑定事件,而不是直接使用`.change()`方法。
解决方法是将代码修改为:
$("input[name='article[format]']:radio").on("change", function() { alert('hola'); });
另外,还有一个可能导致问题的原因是使用了过时的jQuery版本。建议使用1.11版本以上的jQuery,并使用新的`.on()`语法来绑定事件。
问题的原因是使用了错误的语法来绑定radio按钮的change事件,解决方法是使用正确的语法,并确保使用了适当的jQuery版本。
问题原因:代码中使用了错误的语法来绑定radio button的change事件,导致事件无法正常触发。
解决方法:将代码中的错误语法修改为正确的语法,即使用.on()
方法来绑定change事件。修改后的代码如下:
$(document).on('change',"input[name='article[format]']:radio",function(){alert('hola')});
可以在以下链接中查看修复后的代码的工作示例: