所以我在我的网站上有一个页面,其中包含一个带有类名' mainContent'使用AJAX .ajax()每隔1分钟自动更新一次新数据。这里的内容需要一些JavaScript来实现某些功能。现在的问题是JavaScript不能在没有整页刷新的情况下加载到DOM中的新数据。我搜索并发现使用.on()将数据绑定到DOM应该可以工作,如下所示:
$(document).on('click', '.mainContent',function(){
expand();
});
其中expand是一个JS函数。 但是,它只对新数据有效,但对前一次AJAX调用中添加的数据没有...
答案 0 :(得分:0)
你几乎就在那里,这只是你的逻辑。这就是这个jQuery函数的工作原理:
让我们假设您的mainContent
充满了超链接(我不确定,因为您的问题缺乏细节):
$('.mainContent').on('click', 'a', function () {
//do your magic
//$(this) is the clicked link
});
这样,我们的短语是:当 .mainContent 中的链接被点击时,请运行 this 。< / p>
<强>更新强>
根据评论,我认为您的问题可能出在expand
函数上。
我们来试试吧:
$('.mainContent').on('click', 'a', function () {
$(this).simpleexpand();
});
答案 1 :(得分:-1)
您是否尝试在加载新数据的ajax函数的回调上应用绑定?
类似的东西:
$.ajax({
url: url...//Classic ajax call
}).done(function ( data ) {
//Apply your 'on' here
});