contact_container div包含联系人子项,这些子项中有一个复选框。我使用ajax将这些子项附加到容器中。一旦我附加了html并单击了一个childs复选框。 .click 无法识别新添加的复选框,只有子项处理页面加载。下面是我的HTML和Jquery的工作示例。
您是否可以提供解决方案,以便在单击时附加复选框?感谢
这是我的HTML标记:
<div id="contact_container">
<div class="contact">
<div class="contact_checkbox">
<div class="checkbox_container">
<div class="checkbox">
<input class="testing_checkbox" type="checkbox" name="contacts[]" value="bf6b0049059ec8998601f8fe20acb68ecafe2d44">
</div>
</div>
</div>
<div class="contact_info">
<div class="contact_image">
<img src="image.jpg" width="50" height="50" alt="Profile Picture">
</div>
<div class="contact_name"><span>Caroline Airey</span>
</div>
</div>
</div>
</div>
<div id="x_message" class="inputdata" style="overflow: hidden; display: none;">
<label>Message:</label>
<span><textarea name="x_message" placeholder="Enter a message to send to your contact(s)"></textarea></span>
<div class="clear"></div>
<button class="form_button">Add Contact to Network</button>
</div>
这是我的Jquery:
$( ".checkbox" ).click(function() {
var checked = $('.testing_checkbox:checked').length;
$('#testing').val(checked);
if (checked > 0){
$('#x_message').show(1000);
}
else{
$('#x_message').hide(1000);
}
});
答案 0 :(得分:3)
您将需要Parent引用将元素正确绑定到jquery尝试此
$(parentObj).on("click",".checkbox",function() {
var checked = $('.testing_checkbox:checked').length;
$('#testing').val(checked);
if (checked > 0){
$('#x_message').show(1000);
}
else{
$('#x_message').hide(1000);
}
});
parentObj 是您使用ajax调用附加html代码的div或html元素
答案 1 :(得分:0)
请改用此jQuery方法:
$(".checkbox").on("click", function()
{
// Your code here
});
这将从最初加载后动态添加到页面的元素中获取点击次数:)