在 javascript 动态创建的元素上使用 jquery
Use jquery at dynamically created element by javascript
我在我的 main.js 文件中做了一个这样的按钮 :
del_btn = document.createElement("button");
del_btn.className = "btn btn-light btn-sm ";
del_btn.type = "button";
del_btn.id = "delete_btn";
del_btn.innerHTML = 'X';
并将其放在我的 index.html 页面中的 <tr>
中。我想在单击按钮时发出此警报。所以我也在我的 main.js 文件中写了一个看起来像这样的代码。
$("#delete_btn").click(function() {
alert("delete button clicked!!");
});
但是当我点击 id 为 'button' 的按钮时没有任何反应。
我不知道为什么这不起作用。
有谁知道为什么这不起作用?
任何建议将不胜感激!!!
根据最新 jquery
尝试以下
$(document).on('click', "#delete_btn", function() {
alert("delete button clicked!!");
});
我假设您将 delete_btn 附加到文档的正确位置,例如
appendTo = document.getElementById("idToWhomeYouAppend")
appendTo.append(del_btn)
当您使用计划 js 创建 del_btn 按钮时,以相同的方式附加 onclick。例如
del_btn.onclick = function() {
alert("delete button clicked!!");
};
因此无需使用 jquery 注册 onclick,但如果您想使用 jquery,请确保在 del_button 附加到 jquery 之后执行基于 jquery 的代码dom.
我在我的 main.js 文件中做了一个这样的按钮 :
del_btn = document.createElement("button");
del_btn.className = "btn btn-light btn-sm ";
del_btn.type = "button";
del_btn.id = "delete_btn";
del_btn.innerHTML = 'X';
并将其放在我的 index.html 页面中的 <tr>
中。我想在单击按钮时发出此警报。所以我也在我的 main.js 文件中写了一个看起来像这样的代码。
$("#delete_btn").click(function() {
alert("delete button clicked!!");
});
但是当我点击 id 为 'button' 的按钮时没有任何反应。 我不知道为什么这不起作用。 有谁知道为什么这不起作用? 任何建议将不胜感激!!!
根据最新 jquery
尝试以下
$(document).on('click', "#delete_btn", function() {
alert("delete button clicked!!");
});
我假设您将 delete_btn 附加到文档的正确位置,例如
appendTo = document.getElementById("idToWhomeYouAppend")
appendTo.append(del_btn)
当您使用计划 js 创建 del_btn 按钮时,以相同的方式附加 onclick。例如
del_btn.onclick = function() {
alert("delete button clicked!!");
};
因此无需使用 jquery 注册 onclick,但如果您想使用 jquery,请确保在 del_button 附加到 jquery 之后执行基于 jquery 的代码dom.