Javascript 脚本不适用于加载的元素
我创建了一个带有复选框+包装的表单,即:Javascript 脚本不适用于加载的元素,javascript,jquery,ajax,checkbox,Javascript,Jquery,Ajax,Checkbox,我创建了一个带有复选框+包装的表单,即: <form> <div class="input-wrapper"> <input type="checkbox" name="item[]" value="1"> </dv> <div class="input-wrapper"> <input type="checkbox" name="item[]" value="2"> </div
<form>
<div class="input-wrapper">
<input type="checkbox" name="item[]" value="1">
</dv>
<div class="input-wrapper">
<input type="checkbox" name="item[]" value="2">
</div>
<div class="input-wrapper">
<input type="checkbox" name="item[]" value="3">
</div>
</form>
但当我从ajax加载其他复选框时,即:
$.post(
'/my/url',
{...my data...},
function(data){
if(data != 'failed'){
//return new checkbox + wrapper too and append it at the end of the form
$('form').append(data);
}
}
);
切换检查不仅仅适用于加载/附加的元素
如何解决这个问题如何正确创建影响所有元素(即使是加载的元素)的脚本?
谢谢。试试这个小小的修改:
$("form").on("click", ".input-wrapper", function () {
var $checkbox = $(this).find(':checkbox');
$checkbox.prop('checked', !$checkbox[0].checked);
});
让我知道进展如何。试试这个小小的修改:
$("form").on("click", ".input-wrapper", function () {
var $checkbox = $(this).find(':checkbox');
$checkbox.prop('checked', !$checkbox[0].checked);
});
让我知道它是如何进行的。您绑定单击侦听器的方式将绑定到DOM中当前的所有
.input wrapper
元素
您可以分别为单击绑定新对象,或者将侦听器委托给将留在DOM中的父对象(例如,
$(文档)。在(“click”,“.input wrapper”,function(){//Do Stuff});
)绑定单击侦听器的方式将绑定到DOM中当前的所有。input wrapper
元素
您可以分别为单击绑定新的侦听器,或者将侦听器委托给将留在DOM中的父对象(例如,
$(文档)。在(“click”、“.input wrapper”,function(){//Do Stuff});
)检查:检查:非常感谢您的解释。非常感谢您的解释。