我正在寻找一种提高代码性能的方法。目前我做了类似的事情:
$(".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"));
干杯!
答案 0 :(得分:1)
试试这个:
$.get('Page.aspx', function(data) {
var dom = $(data);
$(".div1").html(dom.find("#section1"));
$(".div2").html(dom.find("#section2"));
});
btw:你的部分可能需要一个holder元素,因为我的示例中的dom
包含了<body>
标记内容的第一个级别,find
找不到第一级的任何事情:
<body>
<div id="holder">
<div id="section1"></div>
<div id="section2></div>
</div>
</body>
答案 1 :(得分:0)
你可以切换到使用JSON吗?
$.getJSON('Page.aspx', function(data) {
$(".div1").html(data.section1);
$(".div2").html(data.section2);
});
这比定期获取和遍历结果更快,尽管您需要对来自服务器的响应进行编码。