试图将jQuery get请求转换为可解析的对象

时间:2015-05-01 19:09:03

标签: javascript jquery

我正在尝试将jQuery get请求解析为对象或在页面上获取特定div的其他方式。

这是我的代码:

  $.get("http://en.wikipedia.org/wiki/Afghanistan", function(response) {
      var elements;

      elements = $.html(response);
      console.log(elements);
  });

唯一的问题是要解析的元素不是HTML。让我们说我想在响应变量上得到一个特定的div - 我该怎么做呢?这是为了(最终在经过一些处理后)将其复制到我本地页面上的div

不要担心跨域问题 - 这适用于Phonegap应用程序

3 个答案:

答案 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");

http://jqapi.com/#p=load

答案 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>