我在使用带有Ajax加载内容的jquery插件时遇到问题。我得到了以下示例,但我不知道如何更改代码,因为它有多个函数,如addClass,find和click。
在此示例中,如果单击该元素,则会弹出警报。但这不适用于通过ajax加载到DOM中的元素。
jQuery( document ).ready( function(){
jQuery( 'p' ).click( function(){ alert( 'hello' ); });
});
你需要像
这样的东西jQuery( document ).ready( function(){
jQuery( 'body' ).on( 'click', 'p', function(){ alert( 'hello' ); });
});
如果我有这条线:
jQuery('.omsc-accordion .omsc-toggle')
.addClass('omsc-in-accordion')
.find('.omsc-toggle-title')
.click(function(){
我该如何改变?
答案 0 :(得分:1)
在添加代码后调用您的行,即:
$.ajax({
type: "POST",
url: "/my-action",
success: function(response) {
$("body").append(response);
$('.omsc-accordion .omsc-toggle')
.addClass('omsc-in-accordion')
.find('.omsc-toggle-title')
.click(function(){
...
});
}
});
但对我来说,在addClass之后处理一些东西是没有意义的..反正..它可以工作:))