[英]Javascript does not work after ajax call
我正在尝试进行Ajax调用以获取更多点击数据。 第一次单击它就可以了,但是之后我再也不能单击该按钮,所以我收到的数据也不会应用任何JavaScript(例如bootstrap popover,lazyload img)。 我将JS放在底部(在</body>
标记之前),我认为这是问题所在,因此我试图将js放在<head>
标记中,但这仍然不能解决问题。
我已经找到了关于stackoverflow的解决方案,例如
$(document).on('click','.show_more',function(){
// function
});
但这并不能解决。 这是我的js:
$(document).on('click','.show_more',function(){
var ID = $(this).attr('id');
$('.show_more').hide();
$('.loding').show();
$.ajax({
type:'POST',
url:'load.php',
data:'id='+ID,
success:function(html){
$('#show_more_main'+ID).remove();
$('.item-list').append(html);
}
});
});
如果我的英语不好,很抱歉,因为我是越南人。
只需使用console.log()确保问题在哪里检查按钮事件和ajax请求是否有效。
$(document).on('click','.show_more',function(){
console.log("my button click works");
var ID = $(this).attr('id');
$('.show_more').hide();
$('.loding').show();
$.ajax({
type:'POST',
url:'load.php',
data:'id='+ID,
success:function(html){
console.log("my ajax request was successful")
$('#show_more_main'+ID).remove();
$('.item-list').append(html);
}
});
});
clickEvent()();
function clickEvent() {
$(document).on('click','.show_more',function(){
var ID = $(this).attr('id');
$('.show_more').hide();
$('.loding').show();
$.ajax({
type:'POST',
url:'load.php',
data:'id='+ID,
success:function(html){
$('#show_more_main'+ID).remove();
$('.item-list').append(html);
clickEvent();
}
});
});
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.