0

我正在寻找一种提高代码性能的方法。目前我做类似的事情:

$(".div1").load("Page.aspx #section1");
$(".div2").load("Page.aspx #section2");

但是,这意味着我必须提出 2 个GET请求。有什么方法可以通过执行以下操作将其减少到 1 个请求:

var content = $.load("Page.aspx");
$(".div1").html(content("#section1"));
$(".div2").html(content("#section2"));

干杯!

4

2 回答 2

1

尝试这个:

$.get('Page.aspx', function(data) {
  var dom = $(data);
  $(".div1").html(dom.find("#section1"));
  $(".div2").html(dom.find("#section2"));
});

顺便说一句:可能你需要一个 holder-element 在你的部分周围,因为dom在我的例子中,你的<body>标签内容find的第一层,在第一层找不到任何东西:

<body>
  <div id="holder">
    <div id="section1"></div>
    <div id="section2></div>
  </div>
</body>  
于 2010-10-28T14:29:25.540 回答
0

你可以切换到使用 JSON 吗?

$.getJSON('Page.aspx', function(data) {
    $(".div1").html(data.section1);
    $(".div2").html(data.section2);
});

这比执行常规获取和遍历结果要快,尽管您需要对来自服务器的响应进行编码。

于 2010-10-28T14:53:30.467 回答