我在按钮上添加了复选框,单击它可以正常工作但在通过另一个按钮添加删除后,点击完全没有工作。我需要有人来结账和帮助。
require(['someUtils'], function(someUtils){
someUtils.attachHandler(element);
})
答案 0 :(得分:1)
目前您使用的是“直接”绑定,它只会在您的代码进行事件绑定调用时附加到页面上存在的元素。
在动态生成元素或操作选择器(如删除和添加类)时,需要使用Event Delegation委托事件方法.on()。
一般语法
$(document).on('event','selector',callback_function)
根据您的代码
$('#Locations').on("click", ".rmvbtn", function(){
$('#mydiv').remove();
});
$(".btn").on('click', function(){
$('#Locations').append('<div id="mydiv">' +
'<input type="button" value="-" class="rmvbtn">' +
'<input type="checkbox" name="myCheckbox" />' +
$(".txt").val() +
"</br>............</br>" +
'</div>');
});
$('#Locations').on("click", ".rmvbtn", function(){
$('#mydiv').remove();
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<button class="btn">Create</button>
<div id="Locations"></div>