如何将事件绑定到从AJAX请求注入的HTML

Jus*_*tin 3 html javascript ajax jquery dom

所以我html通过AJAX请求注入:

Ajax响应

  <div id="my-element">HTML from AJAX request</div>
Run Code Online (Sandbox Code Playgroud)

问题是带有id的元素#my-element来自AJAX请求,但我也需要绑定事件.例如:

 $(document).ready(function() {
    $("#my-element").click(function() {
        alert("hit");
    });
 });
Run Code Online (Sandbox Code Playgroud)

显然上面的事件永远不会触发,因为当页面准备就绪时,HTML尚未从AJAX请求中注入.解决这个问题的最佳解决方案是什么?

谢谢.

Dan*_*sky 7

尝试使用jQuery.on功能:http://api.jquery.com/on/

$(document).on('click', '#my-element', function () { ... });
Run Code Online (Sandbox Code Playgroud)

然后它甚至可以使用动态添加的元素.