2012-12-04 46 views
2

我知道我们可以在向服务器发出GET请求时获取整个页面,但是如果我只对该页面上的某个特定div感兴趣,或者更确切地说是在其内容中感兴趣。这里唯一的选择是获取整个页面,使用jquery find()获取div内容吗?或者是否有一些可能性设置某种查询到服务器以请求此特定div返回。是否有可能在ajax get请求中获取页面的一部分?

+0

[提取jQuery的HTML文档的一部分]的可能的复制(https://stackoverflow.com/questions/2137811/extract-part-of-html-document-in-jquery) –

回答

2

你可能想使用jQuery的AJAX工具的更简单的形式针对这种情况,.load

$('#wrapper').load(href+fragmentSelector, function() { 
    // callback to do stuff afterward 
}); 

这里,我们从URL href加载ID为fragmentSelector从元素含量为#wrapper我们当前页面上。

整个页面仍在被请求,但只有您请求的内容被返回。

参考:http://api.jquery.com/load/#loading-page-fragments

3
$.ajax({ 
    'type': 'get' 
    ...some params... 
    success: function(response){ 
     $(response).find('div you are looking for').appendTo('div you want to append it'); 
    } 
}); 

对于一些参数检查jQuery ajax

并回答你的问题:不,没有办法得到某些部分的HTML,而没有提供特殊的服务器端服务。

+0

我明白这一点,但正如我之前所说,我将整个页面下载到客户端,但我想只下载有利于节省带宽的内容,这可能吗? –

+0

是的,后端(服务器端)服务只会返回您需要的部分。对于一个普通的页面 - 服务器将总是回答整个页面的内容 –

+0

是的,这是我的想法,我的意图是不使用任何服务器端代码,只是定期请求页面的一部分,但它不是可能的:\ –

相关问题