【问题标题】:Only load a part of a page with jquery仅使用 jquery 加载页面的一部分
【发布时间】:2012-01-04 16:34:13
【问题描述】:

我有一个 wordpress 网站,想使用 jquery 加载我的页面。我只想加载内容 div,所以我像这样传递这个 url:

var url = $(this).attr('href') + "#content";

现在,当我尝试使用 ajax 加载页面时,它会加载不带 #content 部分的 url。现在它将整个页面加载到我的 div 中,而不仅仅是我想要的部分。

可能和我的 .htaccess 有关:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
# RewriteRule ^index\.php$ - [L]
RewriteRule ^(index\.php/?|intro.html)$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress

有什么想法吗?

【问题讨论】:

标签: jquery ajax wordpress .htaccess


【解决方案1】:

你可以使用类似的东西:

$.get(url,function(response){
 content = $("#content",response);
 $('#newContentHere').append(content);
});

【讨论】:

    【解决方案2】:

    我认为您需要在哈希之前留一个空格。

    这是 jQuery 文档中的 .load() 示例:

    $('#b').load('article.html #target');
    

    所以在你的情况下:

    var url = $(this).attr('href') + " #content";
    
    $('#containerDiv').load(url);
    

    【讨论】:

      【解决方案3】:

      您必须使用 jquery 解析 ajax 调用返回的数据。

      因此,如果您要在页面上显示的 div 的 id 为“results”,那么您的成功函数将如下所示:

      success: function(data) {
          $("content").html($(data).find("results").html());
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-06-07
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多