使用innerHTML在javascript中创建的按钮未触发Jquery事件

使用innerHTML在javascript中创建的按钮未触发Jquery事件,javascript,jquery,Javascript,Jquery,我在网上搜索,但做不到这项工作 我正在js.file中创建一个对话框。在这个js中,我有一个创建按钮的函数,但是使用innerHTML var divButtons = document.getElementById('buttons_insert1'); var buttons_insert = "<button id='okcad' class='button_ok' value='' > <img src='/php/Images/OK.png'

我在网上搜索,但做不到这项工作

我正在js.file中创建一个对话框。在这个js中,我有一个创建按钮的函数,但是使用innerHTML

    var divButtons = document.getElementById('buttons_insert1');    
    var buttons_insert = "<button id='okcad' class='button_ok' value='' > <img src='/php/Images/OK.png' alt='OK' /> OK </button>";
    divButtons.innerHTML = divButtons.innerHTML + buttons_insert;
但这不起作用…事件不要开火

有人能帮我吗

问候


Rafael S.

您需要事件委派,因为您是在加载DOM后追加它的。为此目的


只需单击即可将事件绑定到执行代码时DOM中存在的元素,因此您需要事件委派技术。

您需要事件委派,因为您是在加载DOM后追加事件委派的。为此目的


只需单击
即可将事件绑定到执行代码时DOM中存在的元素,因此需要事件委派技术。

使用
事件委派

$(document).on("click" , "#buttons_insert1 #okcad1" , function() 
{
   alert('hello world');
});

使用
事件委派

$(document).on("click" , "#buttons_insert1 #okcad1" , function() 
{
   alert('hello world');
});

@下层选民们要感谢阿米特和杰奎林!但是只有JQueryKing的答案有效…你能告诉我为什么吗?谢谢谢谢你。我使用了javascript等价物,它工作得非常完美。Rafael,我怀疑Amit的回答是将事件分配给了错误的元素。@down选民愿意评论感谢Amit和JqueryKing!但是只有JQueryKing的答案有效…你能告诉我为什么吗?谢谢谢谢你。我使用了javascript等价物,它工作得非常完美。Rafael,我怀疑Amit的答案是将事件分配给了错误的元素。
$(document).on("click" , "#buttons_insert1 #okcad1" , function() 
{
   alert('hello world');
});