Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 侦听器不适用于动态添加的单选按钮_Javascript_Jquery - Fatal编程技术网

Javascript 侦听器不适用于动态添加的单选按钮

Javascript 侦听器不适用于动态添加的单选按钮,javascript,jquery,Javascript,Jquery,我正在使用以下侦听器: $('#datatable .Answer input:radio').on('change', function() { alert('Radio Button'); }); 我将单选按钮动态添加到这个表“#datatable”,如下所示: $(this).html('<input type="radio" class="Answer" name="correct"/>'); $(this.html(“”); 其中

我正在使用以下侦听器:

   $('#datatable .Answer input:radio').on('change', function() {
        alert('Radio Button');

    });
我将单选按钮动态添加到这个表“#datatable”,如下所示:

   $(this).html('<input type="radio" class="Answer" name="correct"/>');
$(this.html(“”);
其中,这是应添加单选按钮的td元素。 为什么听者不处理新元素

为什么听者不处理新元素

因为您应该像这样订阅更改事件:

$('#datatable .Answer').on('change', 'input:radio', function() {
    alert('Radio Button');

});

请注意,
'input:radio'
选择器是如何移动到
.on()
函数的,以便以生动的方式订阅活动。

哦,非常感谢,我知道这与我之前所做的事情类似。我说了声“谢谢widout”,尝试它似乎仍然没有;t work:(现在它起作用了,我不得不在活动部分移动.Answer。“为什么侦听器不能处理新元素?”您可以在中找到答案:“事件处理程序仅绑定到当前选定的元素;它们必须在代码调用
.on()
时存在于页面上。”