在内部加载页面内容,Ajax不能在模态窗口内工作

时间:2018-04-30 09:17:46

标签: jquery ajax modal-window

我有一个显示团队成员的页面(每个都是自定义帖子类型),当点击团队成员时,内容在名为#single-post-container的模态窗口内打开。我通过将onclick事件附加到每个具有“.post-link”类的链接来完成此操作。这工作正常,但在模态窗口内我也有链接允许成员之间的导航而不关闭窗口。我使用% git config core.ignoreCase true % git checkout branch Switched to branch 'branch' % git ls-tree HEAD 100644 blob bcc9cdfd113753edf279e92afd622b0f3bb05fbc FOO 显示这些(对于下一篇文章相同),我通过使用functions.php中的过滤器确保输出的链接也具有类“.post-link”。问题是这些链接并不总是有效,有时页面内容不会加载到模态窗口中,我怀疑在我的apropach中有一些不正确的东西,即使它在大多数时间都有效。

以下是相关代码:

模态窗口div,最初隐藏:

<?php previous_post_link(); ?>

jQuery将附加“onclick”事件的链接:

<div id="single-post-container" class="hidden"></div>

我在jQuery之后排队的ajax.js脚本:

<h1><a class="post-link" rel="<?php the_ID(); ?>" href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h1>

然后在每个名为single-team.php的帖子的模板中,我也在最后调用相同的脚本,因为我知道内部生成的链接不是开头的DOM的一部分,所以事件监听器在页面加载到模态窗口之前无法附加(虽然我怀疑这是我的方法可能出错的地方):

jQuery(document).ready(function ($) {

    $.ajaxSetup({cache:false});
    $(".post-link").click(function(){
        $("#single-post-container").show();
        var post_link = $(this).attr("href");

        $("#single-post-container").html("content loading");
        $("#single-post-container").load(post_link);
    return false;
    });

    $("#close").click(function(){
        $("#single-post-container").hide();
    });
});

0 个答案:

没有答案