我在该模板中有一个下划线模板我有这个
<input type='checkbox' name='contacted_by_ae' class='contactedbyae'>
我正在尝试检测更改,以便用户点击它。然后它会发布
$('.contactedbyae').change(function() {
$.post( "/contactedbyae", function( data ) {
alert(data);
});
});
上面的jQuery不起作用。我把它放在我的.html文件和我的实际下划线模板文件中,我无法工作。我如何让它工作?
答案 0 :(得分:8)
听起来页面上没有.contactedbyae
元素,因为在注册事件处理程序时尚未呈现模板。在这种情况下,事件委托将有所帮助:
$('body').on('change', '.contactedbyae', function() {
$.post( "/contactedbyae", function( data ) {
alert(data);
});
});
最好使用容器选择器呈现模板,而不是body
,而是附加HTML。
答案 1 :(得分:0)
我认为您在设置事件侦听器之前未附加“已编译”模板。您可以使用delegate method代替change
来绑定回调...