javascript - 无法在附加的 div 上运行 jquery
问题描述
我的页面上有一个按钮,允许用户添加表单。单击新表单中的按钮时,应运行 jquery 函数。不幸的是,jquery 函数似乎没有在新添加的 div 上运行(它确实运行在初始页面加载时存在的 div)。
<div id="empty_form" style="display:none">
<!-- Form Contents -->
<div class="deletebox">
Remove
</div>
</div>
<div id='add_more'>
Add Another Form
</div>
<script>
$('#add_more').click(function() {
var form_idx = $('#id_form-TOTAL_FORMS').val();
$('#form_set').append($('#empty_form').html().replace(/__prefix__/g, form_idx));
});
</script>
<script>
$(".deletebox").click(function () {
console.log('box was clicked')
});
</script>
当用户单击新附加表单中的删除框时,什么也没有发生。即 jquery 没有注册它被点击并且没有消息被打印到控制台。你知道如何解决这个问题吗?
谢谢!
解决方案
我需要使用
$(document).on('click', '.deletebox', function() {
而不是
$(".deletebox").click(function () {
推荐阅读
- r - R – 使用 for 循环并通过引用名称中的索引号来划分列
- php - 如何更新新的集合值?
- vb.net - 跨线程操作无效:问题
- php - 变量上的php htmlentities
- python - 在 nxn 格式的 gridlayout 中安排 groupbox 的问题
- python - 在 Discord.py 中获取消息作者
- ios - 如何转换列表
进入列表 飘飘然 - sql - 如果至少存在一个值,则获取计数列 - SQL
- git - 为什么 git 将随机文件推送到 repos?
- python - 在 0.074 秒内以 code=0 退出 - 输出窗口在 Visual Studio 中没有输出