Javascript 附加到动态div的简单下拉列表不工作

Javascript 附加到动态div的简单下拉列表不工作,javascript,jquery,html,dynamic,Javascript,Jquery,Html,Dynamic,我正在尝试下拉到动态创建的div。 但它并没有让我改变价值观,我认为它没有得到关注 jquery 我已经实现了一个提琴示例来演示我的问题 单击新创建的div将打开下拉列表。问题是,每次单击下拉列表时,都会生成div的click事件。这将导致添加新的下拉列表。像这样试试 $(document).ready(function () { wrapper = jQuery("<div />", { "class": "class1", "id"

我正在尝试下拉到动态创建的div。 但它并没有让我改变价值观,我认为它没有得到关注

jquery 我已经实现了一个提琴示例来演示我的问题


单击新创建的div将打开下拉列表。

问题是,每次单击下拉列表时,都会生成div的click事件。这将导致添加新的下拉列表。像这样试试

$(document).ready(function () {
    wrapper = jQuery("<div />", {
        "class": "class1",
            "id": "dynamic1",
            "style": "background-color:beige; border:1px solid red;width:94%;",
            "text": "dynamically added div"
    }).appendTo($("#sample"));
  $("#sample").append($("<input/>", {
    type: "button",
    value: "add",
    id: "dynamic2"
}));

    $('body').on("click", "#dynamic2", function () {

        $("#dynamic1").html($("#changeUserform").html());
    });
});

问题是,每次单击下拉列表时,都会生成div的click事件。这将导致添加新的下拉列表。像这样试试

$(document).ready(function () {
    wrapper = jQuery("<div />", {
        "class": "class1",
            "id": "dynamic1",
            "style": "background-color:beige; border:1px solid red;width:94%;",
            "text": "dynamically added div"
    }).appendTo($("#sample"));
  $("#sample").append($("<input/>", {
    type: "button",
    value: "add",
    id: "dynamic2"
}));

    $('body').on("click", "#dynamic2", function () {

        $("#dynamic1").html($("#changeUserform").html());
    });
});

此代码就是问题所在:

$('body').on("click", "#dynamic1", function () {
        $(this).html($("#changeUserform").html());
});
无论何时单击div,都会覆盖现有的html,这就是问题所在

将click事件更改为dblclick,不过现在必须双击它


演示:

此代码就是问题所在:

$('body').on("click", "#dynamic1", function () {
        $(this).html($("#changeUserform").html());
});
无论何时单击div,都会覆盖现有的html,这就是问题所在

将click事件更改为dblclick,不过现在必须双击它

演示:

您可以更改点击事件并仅触发一次

$'body'.oneclick,dynamic1,函数{

我相信它会起作用的

检查您的

您可以更改点击事件并仅触发一次

$'body'.oneclick,dynamic1,函数{

我相信它会起作用的


检查您的

如果您是对的,单击“再次冒泡到div”。如果您是对的,单击“再次冒泡到div”。