1

目前,当我使用 jQuery Ajax 加载一些内容时。这会加载整个页面并仅返回我的内容。问题是我不想加载整个页面。我只想加载此页面的此内容而不加载整个页面。

  $('#single').load(href+' #single-content', function() { 

  });

此函数加载整个href页面并返回#single-content.

有可能吗?

4

3 回答 3

3

不可能只加载页面的一小部分然后返回那一小部分。#single-content这是因为如果请求没有完全加载页面并且它是否位于页面中,则请求无法知道“ ”在页面中的位置。

#single-content如果您出于性能原因只想加载“ ”,我建议您创建一个新页面,在其中加载仅包含“ #single-content”的内容

于 2012-06-14T09:27:48.303 回答
1

您在 Web 服务器上选择的语言是什么?你的工作必须达到那个水平。因此,如果您使用 PHP,则必须修改页面逻辑,以便可以返回内容的谨慎部分而不是整个页面。

理想的方法是在服务器端创建模板。您将拥有一个包含整个 HTML 页面的主模板,然后在其中包含相关内容。然后,您的站点中的每个页面都将拥有更小的视图文件。这将允许您在服务器端语言中使用逻辑,可以选择使用包含页面内容的模板返回整个页面,或者只返回没有外部主模板的页面内容。

于 2012-06-14T09:31:35.667 回答
0

    <!doctype html>
    <html lang="en">
    <head>
    <meta charset="utf-8">
    <title>load demo</title>
    <style>
    body {
    font-size: 12px;
    font-family: Arial;
    }
    </style>
    <script src="//code.jquery.com/jquery-1.10.2.js"></script>
    </head>
    <body>
    <b>Projects:</b>
    <ol id="new-projects"></ol>
    <script>
    $( "#new-projects" ).load( "/resources/load.html #projects li" );
    </script>
    </body>
    </html>

此代码执行您想要的操作,它来自官方 jQuery 文档http://api.jquery.com/load/(第一个示例),您可以像这里 http://api.jquery.com/load/ 一样加载和获取另一个页面(在同一域上)的一部分/api.jquery.com/resources/load.html

于 2014-12-02T15:10:12.350 回答