在jQuery中再次使用$ .get(“url”,data)?

时间:2017-12-29 18:01:18

标签: javascript jquery

我正在尝试使用$ .get()函数从页面获取数据,然后通过jQuery解析数据,例如获取所有图像,然后将其放入用户页面的主体中。

$.get("/character/hats").done(function(data) {
   //$("body").prepend(data);
   /*data?*/$(".card > .card-body .col-md-4").each(function(){
     let hatdata=$(data).find('pull-left').html;
     let hatid=0;
     $("body").prepend('<p>found!</p><div>'+hatdata+'</div>');
     let assetcode=0;
     console.log("I see hat id" + "");
   });*/
});

有没有办法使用$ .get中的jQuery数据响应,并再次使用jQuery解析它?

3 个答案:

答案 0 :(得分:1)

要访问从$.get发回的数据,您只需要引用它。您不应该使用$()将其转换回jQuery对象。

以下是获取JSON响应的示例。

$.get('https://httpbin.org/get').done(function(data) { 
  console.log(data); // data is a variable which contains a parsed JSON response to a javascript object.
  console.log(data.url);
});

您可以在此处查看回复的内容:https://httpbin.org/get

如果服务器的响应不是JSON,则需要执行其他操作。

如果回复是HTML,您可以这样做:

$.get('https://httpbin.org').done(function(data) { 
  console.log(data); // data is now a string of html, which you can insert other places
  $('.some-div').html(data);
});
当您想使用jQuery“查询”页面的DOM时,可以使用

$(...)。您可以使用常规Javascript查询DOM元素,但不会包含许多有用的方法,例如.find().html()。所以基本上你将一个元素转换为一个jquery元素,就像类固醇上的javascript一样,并添加了更多的方法。

然而,来自$.get的响应将是一个对象(如果是JSON)或一串html(如果是HTML)。您可以将HTML字符串转换为jQuery,并解析它,如果这是您想要的。

$(data).find('.some-element-in-response')

答案 1 :(得分:1)

html()是函数而不是属性名称

变化:

let hatdata=$(data).find('pull-left').html;

要:

let hatdata=$(data).find('pull-left').html();

答案 2 :(得分:0)

是的,你可以用不同的方式做到这一点。你需要改变某种方式并改变一些ajax设置如下:

JAVAOPTS -> -DXyz=123