我见过this question,我看过this fiddle。
我的Fiddle
here。这是一个简单的问题。为什么不起作用?
#html
<input checked="checked" id="article_format_html" name="article[format]" type="radio" value="html">Some meaningful value
<input id="article_format_text" name="article[format]" type="radio" value="text">Another Value
#js
$("input[name='article[format]']:radio").change(alert('hola'));
根据大众的要求,我这样做了:
.change(function(){alert('hola')});
结果:不起作用。
因此,JS-Fiddle将您的js代码包装在iframe
部分Result
的头部。对于jQuery选择器(或操作DOM的任何j)正常工作,必须在* 渲染DOM元素之后执行 *。因此,准备好和/或在body
关闭之前包装代码是确保查询选择器不返回undefined
的最安全方法。
答案 0 :(得分:5)
.on
语法)演示:http://jsfiddle.net/abhitalks/e5ByP/2/
$("input[name='article[format]']:radio").on("change", function() {
alert('hola');
});
答案 1 :(得分:4)
您的代码无效,因为您没有将jQuery包装在document.ready function:
中$(document).ready(function()
{
$("input[name='article[format]']:radio").change(function()
{
alert('hola')
});
});
<强> FIDDLE DEMO 强>
答案 2 :(得分:2)
.on()
的代码应为:
$(document).on('change',"input[name='article[format]']:radio",function(){alert('hola')});
答案 3 :(得分:1)
将其包装在匿名函数和DOM就绪中:
$(function () {
$("input[name='article[format]']:radio").change(function () {
alert('hola')
});
});
答案 4 :(得分:1)
那是因为您的更改处理程序语法不正确。你需要在DOM准备好包装代码:
$("input[name='article[format]']:radio").change(function(){
alert('hola')
});
<强> Demo 强>
答案 5 :(得分:0)
在您的代码中,您不能使用.change()
handler是每次触发事件时执行的函数。
类型:Function(Event eventObject)
试试这个:
$("input[name='article[format]']:radio").change(function(){
alert('hola')
});
答案 6 :(得分:0)
请在change
事件
$("input[name='article[format]']:radio").change(function(){
alert('hola');
});
答案 7 :(得分:0)
将代码放入文档中,然后尝试这样做。请参阅语法
$(function () {
$("input[name='article[format]']:radio").change(function () {
alert('hola')
});
});
答案 8 :(得分:0)
把它放在旁边的文件raedy
像这样:$(document).ready(function () {
$("input[name='article[format]']:radio").change(function(){
alert('hola')
});
});
答案 9 :(得分:0)
使用以下代码
只有在DOM完全加载后才使用DOM操作和事件
$(document).ready(function(){
$("input[name='article[format]']:radio").change(function(){alert('hola')});
});
答案 10 :(得分:0)
你忘记了$(文件).ready(),你忘记在change()中写函数()
$(document).ready(function(){
$("input[name='article[format]']:radio").change(function(){
alert('hola')
});
});