我有一个页面将异步Jquery请求发送到另一个页面,我收到一个响应按钮。 按钮有类" delete_button"。
<BUTTON class="delete_button">Delete</BUTTON>
问题是,这个&#34;新的&#34;按钮未绑定(并且不会触发)任何Jquery事件。
我尝试使用.on()函数(以及旧的已弃用的.live()),但我无法将事件绑定到该按钮。 Jquery甚至如下。
$(".delete_button").on("click", function(){
//Code here...
});
我已经使用调试器检查按钮实际上是否具有正确的类,并且Javascript表示没有错误。控制台没什么奇怪的。 简单来说,事件不会发生。
答案 0 :(得分:1)
让我们说当你收到你的delete_button时它被附加到一个div,以便它在那个div中,例如。
<div id="myDiv">
<button class="delete_button">Delete</button>
</div>
知道这一点,你可以创建一个像这样的on事件:
$("#myDiv").on("click", ".delete_button", function(){
//Code here...
});
这样事件就被绑定到一个肯定存在的元素,然后jQuery将该事件委托给任何使用.delete_button选择器动态创建的元素。
您目前正在使用它的方式,使用.on并不重要,因为初始选择器(在$(&#34;选择器&#34;)中)部分必须是页面加载时存在的内容。请参阅http://api.jquery.com/on/和名为&#34;直接和委派活动&#34;为了更全面的解释。