Jquery 如何使用AJAX从Wordpress中的url参数提取特定循环

Jquery 如何使用AJAX从Wordpress中的url参数提取特定循环,jquery,ajax,wordpress,Jquery,Ajax,Wordpress,我有一个显示所有项目的工作页面。我正在使用分类法根据单击的链接对结果进行分组和显示。总体目标是在显示过滤结果时突出显示单击的链接。如果用户单击了Things,则Things将以粗体显示,页面将只加载WP中分类为“Things”的结果 html如下所示: <div class="more"> <a class="static" href="site/work">ALL</a> <a class="static" href="site/?ty

我有一个显示所有项目的工作页面。我正在使用分类法根据单击的链接对结果进行分组和显示。总体目标是在显示过滤结果时突出显示单击的链接。如果用户单击了Things,则Things将以粗体显示,页面将只加载WP中分类为“Things”的结果

html如下所示:

<div class="more">
    <a class="static" href="site/work">ALL</a>
    <a class="static" href="site/?type=Things">Things</a>
    <a class="static" href="site/?type=More Things">More Things</a>
    <a class="static" href="site/?type=Objects">Objects</a>
    <a class="static" href="site/?type=Goals">Goals</a>
    <a class="static" href="site/?type=Books">Books</a>
    <a class="static" href="site/?type=Drawings">Drawings</a>
    <a class="static" href="site/?type=Thoughts">Thoughts</a>
</div>
<div class="more">
        <a class="static" href="site/work">ALL</a>
        <a class="static" href="site/?type=Things">Things</a>
        <a class="static" href="site/?type=More Things">More Things</a>
        <a class="static" href="site/?type=Objects">Objects</a>
        <a class="static" href="site/?type=Goals">Goals</a>
        <a class="static" href="site/?type=Books">Books</a>
        <a class="static" href="site/?type=Drawings">Drawings</a>
        <a class="static" href="site/?type=Thoughts">Thoughts</a>
    </div>
<div class="more">
        <a class="active" href="site/work">ALL</a>
        <a class="static" href="site/?type=Things">Things</a>
        <a class="static" href="site/?type=More Things">More Things</a>
        <a class="static" href="site/?type=Objects">Objects</a>
        <a class="static" href="site/?type=Goals">Goals</a>
        <a class="static" href="site/?type=Books">Books</a>
        <a class="static" href="site/?type=Drawings">Drawings</a>
        <a class="static" href="site/?type=Thoughts">Thoughts</a>
    </div>
这就是问题所在。为了保留显示用户单击项目标题的类更改,我删除了页面重新加载选项。我仍然需要通过url传递
?type=
,以获得新的筛选结果。有人建议这可以使用Ajax来完成。我不知道该怎么做

或者我可以使用Jquery获取通过url传递的值并将其与链接匹配吗

更新

让我简化一下。我想通过传递名为active的类的
标记,向用户显示单击了哪个链接

因此,默认情况下,代码如下所示:

<div class="more">
    <a class="static" href="site/work">ALL</a>
    <a class="static" href="site/?type=Things">Things</a>
    <a class="static" href="site/?type=More Things">More Things</a>
    <a class="static" href="site/?type=Objects">Objects</a>
    <a class="static" href="site/?type=Goals">Goals</a>
    <a class="static" href="site/?type=Books">Books</a>
    <a class="static" href="site/?type=Drawings">Drawings</a>
    <a class="static" href="site/?type=Thoughts">Thoughts</a>
</div>
<div class="more">
        <a class="static" href="site/work">ALL</a>
        <a class="static" href="site/?type=Things">Things</a>
        <a class="static" href="site/?type=More Things">More Things</a>
        <a class="static" href="site/?type=Objects">Objects</a>
        <a class="static" href="site/?type=Goals">Goals</a>
        <a class="static" href="site/?type=Books">Books</a>
        <a class="static" href="site/?type=Drawings">Drawings</a>
        <a class="static" href="site/?type=Thoughts">Thoughts</a>
    </div>
<div class="more">
        <a class="active" href="site/work">ALL</a>
        <a class="static" href="site/?type=Things">Things</a>
        <a class="static" href="site/?type=More Things">More Things</a>
        <a class="static" href="site/?type=Objects">Objects</a>
        <a class="static" href="site/?type=Goals">Goals</a>
        <a class="static" href="site/?type=Books">Books</a>
        <a class="static" href="site/?type=Drawings">Drawings</a>
        <a class="static" href="site/?type=Thoughts">Thoughts</a>
    </div>
但是,由于在传递新的url变量时页面正在重新加载,因此addClass(“active”)在页面重新加载后不会保持不变


有解决方法吗?

您有两种解决方法:

  • 加载下一页时,请检查分类并激活该导航项。在这种情况下,可以使用
    ,但它可能会因分类法的不同而有所不同
  • 使用AJAX加载页面内容,使用jQuery替换内容所在的容器div 类似这样的事情可能会有所帮助:

    $("div.more a").on("click", function (event) {
        // prevent page reload
        event.preventDefault();
        // get the contents
        $.get(this.href, function (response) {
            // jquerify the response HTML string and find our replaceable area
            var result = $(response).find('#myContentDiv');
            // do the replace
            $('#myContentDiv').html(result);
        });
    });
    

    我希望你觉得这些信息有用#myContentDiv应该是您进行循环的地方。

    请用简单的步骤解释您希望通过单击实现的行为。代码和解释不明确。代码提到散列,解释提到搜索参数…非常混乱