我正在尝试将jQuery get请求解析为对象或在页面上获取特定div的其他方式。
这是我的代码:
$.get("http://en.wikipedia.org/wiki/Afghanistan", function(response) {
var elements;
elements = $.html(response);
console.log(elements);
});
唯一的问题是要解析的元素不是HTML
。让我们说我想在响应变量上得到一个特定的div
- 我该怎么做呢?这是为了(最终在经过一些处理后)将其复制到我本地页面上的div
。
不要担心跨域问题 - 这适用于Phonegap应用程序
答案 0 :(得分:2)
使用$.parseHTML()
,这样您就可以将该响应转换为一组DOM节点,然后将其插入到文档中。
你可以这样做:
$.get("http://en.wikipedia.org/wiki/Afghanistan", function(response) {
var elements;
elements = $.parseHTML(response);
console.log(elements);
var myDiv = $(elements).find('#idForDiv');
});
答案 1 :(得分:1)
听起来jQuery加载函数完全符合您的要求。您可以在网址后面指定一个选择器来加载页面的特定部分:
$("#mydiv").load( "http://en.wikipedia.org/wiki/Afghanistan #divonpage");
答案 2 :(得分:0)
如果来自服务器的响应是HTML,那么您可以将其包装在jQuery对象中并对其进行操作。
我会保证这种做法:
var server_response = '<div style="background-color:yellow;"><div class="find-me">Hello</div></div>';
$('span').html($(server_response).find('.find-me'));
.find-me {
color: blue;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<span></span>