为什么jQuery .on()不支持加载AJAX的元素?

Chu*_*d37 0 ajax jquery

好吧,我已经设法.on在不同的网站上工作,但由于某种原因,这只是一个痛苦.

这是我的代码:

$("#tabSection").on("click", "a.tab", function () {
    alert('bob');
});
Run Code Online (Sandbox Code Playgroud)

和HTML(将通过jQuery加载.load():

<div id="tabSection">
    <table border=0 width="750px" cellspacing=0 cellpadding=0>
    <tr><td class="tab"><a href="javascript:void();" rel="details" class="tab selected">Details</a></td>
Run Code Online (Sandbox Code Playgroud)

显然我关闭了桌子和tabsection div.在我通过ajax加载它之前一切正常.现在,我根本无法使用它.有什么不可能的建议吗?我错过了什么吗?

Guf*_*ffa 8

您正在加载#tabSection元素,这意味着当您尝试连接事件时它不存在.

挂钩事件时挂钩事件的元素必须存在.使用加载HTML的元素.

$("#customerForm").on("click", "#tabSection a.tab", function () {
  alert('bob');
});
Run Code Online (Sandbox Code Playgroud)