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()
时存在于页面上。”