将jquery绑定到动态加载的内容

我有以下html树:

我使用ajax将以下内容加载到#content-wrap1

 
Who we are Our team

ABOUT US : Dance is a type of art

哪个成功发生,结果HTML如下所示:

 
.
Who we are Our team

ABOUT US : Dance is a type of art

现在我想点击动态加载的链接来加载以下内容:

 
Who we are Our team

Hi there! How are you?

所以最终的HTML看起来像这样:

 
.
Who we are Our team

Hi there! How are you?

我听说我应该使用on()将jquery绑定到动态加载的内容。 所以我做了以下事情:

 ('#section1').on("click", "#section1#content-wrap1#content a", function(){ alert("1"); toLoad = $(this).attr('href')+' #content'; $('content-wrap1').load(toLoad); } 

问题1 :这是on()的正确用法吗? 因为当我点击链接时,我没有在屏幕上看到alert 1 ,页面只是导航到https://stackoverflow.com/questions/13107715/binding-jquery-to-dynamically-loaded-content/whoweare.php

问题2 :Incase我确实设法获得警报,是否有可能通过点击链接来加载替换首先点击的链接的内容?

问题1:这是on()的正确用法吗? 因为当我点击链接时,我没有在屏幕上看到警报1,页面只是导航到whoweare.php

  • 你错过了一个美元符号: $和使用你绑定同一个id的文件是不正确的,如果你热衷于: javascript中“$”的含义是什么?如果你更想知道为什么.on jQuery live方法有什么问题?

 $(document).on("click", "#content a", function(){ alert("1"); toLoad = $(this).attr('href')+' #content'; $('content-wrap1').load(toLoad); }) 

问题2: Incase我确实设法获得警报,是否有可能通过点击链接来加载替换首先点击的链接的内容?

  • 这可能会帮助你: jQuery如何替换src url

问题1

你的绑定语句应该是这样的:

 $(document).on("click", "#section1 #content-wrap1 #content a", function() { ... }); 

请注意,我们现在绑定到document对象,以容纳与动态或其他方式加载的第二个选择器( #section1 #content-wrap1 #content a )匹配的所有元素。

另外,请注意第二个选择器(空格)中的校正。

问题2

是否可以通过理论上点击链接来加载替换首先点击的链接的内容?

是。 完全。