javascript - jQuery:创建一个 div 在单击时提醒您,

标签 javascript jquery html

我无法为其添加标题。这是开始:)...

我有add div,当单击时,它会创建 alert分区当alert div 被点击它提醒我。

这是一个例子。

$("#add").click(function(){
    $("#add").after("<div class='alert'>Alert</div>");
});

$(".alert").click(function(){
            alert("Here I am");
});

我注意到如果我在 html 模板中放置一个 div 作为 <div class="alert">Alert</div>警报将会起作用。但如果我通过 jQuery/JS 添加 div,它将无法工作。

这有什么意义呢? 添加更多输入并删除它以防他/她添加太多,我注意到它不起作用,我想知道为什么:

这是实际的代码:

$(document).ready(function(){
    var i           = $("#new_field_count").val();

    //add new field
    $("#addnew_field").click(function(){
        i++;
        $("#new_field").before("<div class='fivepadding'><input name='part1_" + i + "' type='text' placeholder='<?=lang('addform_p1')?>'> = <input name='part2_" + i + "' type='text' placeholder='<?=lang('addform_p2')?>'> <span class='remove clickable'><?=lang('addform_field_remove')?></span> </div>");
            $("#new_field_count").val(i);
    });

    // remove the field
    $(".remove").click(function(){
        i--;
        $(this).parent('div').remove();
        $("#new_field_count").val(i);
    });
});

最佳答案

对于动态创建的内容,请使用on

$("#wrapper-div").on("click", ".alert", function(){
        alert("Here I am");
}; 

此外,值得一提的是,建议使用 on 而不是 click 来监控示例类。
单击事件将冒泡到父级,而不是分别向每个类元素添加事件处理程序。根据 jQuery 文档,最好将处理程序附加到最接近的相关父元素(而不是文档)。

关于javascript - jQuery:创建一个 div 在单击时提醒您,,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27758134/

相关文章:

javascript - 如何修复另一个包含滚动条的元素内的 div?

javascript - 函数仅在调用它的最新元素上运行

Javascript比较内存中对象的大小

javascript - PouchDB 可以在 Node REPL 中使用吗?

javascript - 通过 URL 参数在远程页面上设置 Iframe 源

javascript - jQuery:将类名选择器与 animate() 方法一起使用不起作用

javascript - 我们如何通过将 HTML 元素拖放到另一列中来克隆它(仅在该列中而不是在其外部)

javascript - 从文本类型的输入动态创建列表

javascript - 如何通过单击页面上的任意位置来关闭下拉菜单?

javascript - 显式结束响应时调用 express.js 下一个中间件层