让我解释一下。
我有一个列出一堆帖子的页面。
每个帖子都会显示一个可点击的回复图标,用于打开包含单个帖子的fancybox叠加层。该图标还会显示旁边的回复计数。此图标出现在主页面和弹出窗口中(虽然在弹出窗口中它已停用,但它只是显示帖子计数)。
我正在使用AJAX发布和删除回复。 PHP功能全部到位并正常工作。
因此,当我删除fancybox中的帖子弹出时,以下更新回复计数:
$(".reply-count").load(location.href + " .reply-count");
这是为了清晰起见的全部功能:
$(document).on( 'click', '.comment-delete', function() {
var r = confirm("Delete This Comment?");
if (r == true) {
var id = $(this).data('id');
var nonce = $(this).data('nonce');
var post = $(this).parents('.post:first');
var space = (" ");
$.ajax({
type: 'post',
url: MyAjax.ajaxurl,
data: {
action: 'my_delete_comment',
nonce: nonce,
id: id
},
success: function( result ) {
if( result == 'success' ) {
$('#div-comment-' + id).fadeOut('slow');
$(".reply-count").load(location.href + " .reply-count");
}
}
})
}
return false;
})
这很有用,但它只是在fancybox弹出窗口中重新加载.reply-count div,而不是在主页面上。
有没有办法让jQuery在主页面上更新相同的.reply-count div,或者jQuery只能在当前窗口中工作?
或者,也许我可以在fancybox弹出窗口关闭时添加一个调用来重新加载主页面上的div?