我知道我们可以在向服务器发出GET请求时获取整个页面,但是如果我只对该页面上的某个特定div感兴趣,或者更确切地说是在其内容中感兴趣。这里唯一的选择是获取整个页面,使用jquery find()获取div内容吗?或者是否有一些可能性设置某种查询到服务器以请求此特定div返回。是否有可能在ajax get请求中获取页面的一部分?
回答
你可能想使用jQuery的AJAX工具的更简单的形式针对这种情况,.load
。
$('#wrapper').load(href+fragmentSelector, function() {
// callback to do stuff afterward
});
这里,我们从URL href
加载ID为fragmentSelector
从元素含量为#wrapper
我们当前页面上。
整个页面仍在被请求,但只有您请求的内容被返回。
$.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,而没有提供特殊的服务器端服务。
我明白这一点,但正如我之前所说,我将整个页面下载到客户端,但我想只下载有利于节省带宽的内容,这可能吗? –
是的,后端(服务器端)服务只会返回您需要的部分。对于一个普通的页面 - 服务器将总是回答整个页面的内容 –
是的,这是我的想法,我的意图是不使用任何服务器端代码,只是定期请求页面的一部分,但它不是可能的:\ –
您可以使用HTTP RANGE Header,但您可以选择一个字节范围来下载,而不是DIV选择的内容。
例子:
curl -r 0-1000 http://localhost -v
看到Using the HTTP Range Header with a range specifier other than bytes?
- 1. 是否有可能有分块的Http GET请求?
- 2. 在我的aspx页面上获取Ajax GET请求参数
- 3. 是否有可能在jQuery中获取Ajax请求的全局设置?
- 4. 是否有可能从AJAX请求中获取rowCount()以在分页中使用它?
- 5. __doPostBack()是否可能发送GET请求?
- 6. 是否有可能重定向页面,即使有不完整的ajax请求
- 7. 如何获取在node.js中生成http ajax GET请求的页面的url?
- 8. 是否有可能在nginx中将POST请求重写为GET请求?
- 9. Ajax GET请求到ASP.NET页面方法?
- 10. 是否有可能从jquery加载的任何页面成功的ajax获取请求到google.com?
- 11. 在AJAX中执行GET请求是否加载所有图像?
- 12. 获取GET请求
- 13. Valence分页获取请求
- 14. 是否有可能判断用户是否浏览了页面的一部分?
- 15. 使用AJAX GET请求获取对象
- 16. 错误GET页面请求
- 17. 是否有可能得到哪个标签加载Ajax页面没有GET?
- 18. 是否有可能对Angular使用获取请求?
- 19. GET ajax请求
- 20. AJAX请求不能与外部页面一起使用?
- 21. 是否可以从ajax get请求的源头删除端口?
- 22. 是否有可能使用Rake在Rails中模拟页面请求?
- 23. 如何在ajax请求页面中获取会话变量?
- 24. 获取请求的页面url javascript
- 25. 是否可以指向没有锚的页面的一部分?
- 26. 获取页面URL的一部分
- 27. 如何获取ajax请求到同一页面?
- 28. 是否可以“复用”来自同一页面的多个AJAX请求?
- 29. 如何绕过Ajax中GET请求方法的当前页面?
- 30. 如何从servlet页面中的ajax请求获取数据?
[提取jQuery的HTML文档的一部分]的可能的复制(https://stackoverflow.com/questions/2137811/extract-part-of-html-document-in-jquery) –