javascript - parse - cómo leer json resultado en jquery?
print json javascript (4)
No estoy familiarizado con jquery. ¿Podrías por favor ayudarme en esto? Tengo una respuesta JSON desde la URL, pero no sé cómo, puedo leer valor clave en jquery.
Por ejemplo, ¿cómo obtener el valor de "HAWBItemEntity"?
Por favor, compruebe la siguiente respuesta json.
{
"waybill_log": {
"TrackingResult": {
"HAWBEntity": {
"HAWBID": 282829899,
},
"HAWBHistoryEntity": [
{
"ActionDate": "4/26/2014 12:32:00 PM",
},
{
"ActionDate": "4/26/2014 12:32:00 PM",
}
],
"HAWBAttachmentEntity": [
{
"FileName": "Invoice_30018018516..pdf",
}
],
"HAWBItemEntity": null,
},
"HAWBAttachmentEntityExtendedList": [
{
"HAWBAttachmentEntity": {
"FileName": "Invoice_30018018516..pdf",
},
"AttachmentLink": "nw"
}
],
"CurrentStatus": "Delivery",
"ConsolsData": {
"ConsolNumber": null,
},
"ItemContainerData": {
"ContainerNumber": null,
},
"FlightDetails": null,
}
}
No tiene que leer json con jquery en general.
Simplemente JSON.parse()
con facilidad, usando la función JSON.parse()
y sin Jquery.
var json = ''{"result":true,"count":1}'',
obj = JSON.parse(json);
alert(obj.count);
Si está utilizando jQuery para obtener el JSON, puede usar:
http://api.jquery.com/jquery.getjson/
Y analizará el JSON por ti.
var json = $.parseJson(jsonString);
Para obtener el valor 282829899 para "HAWBID", usaría:
var hawbid = json.waybill_log.TrackingResult.HAWBEntity.HAWBID;
Utilice el método
jQuery.parseJSON()
jQuery para obtener un objeto JavaScript de su cadena JSON:var test = jQuery.parseJSON(data); // Where ''data'' is your JSON string
Después del análisis, la
test
es un objeto de JavaScript. Los documentos jQuery sobreparseJSON()
:
jQuery.parseJSON ()
Toma una cadena JSON bien formada y devuelve el objeto JavaScript resultante. ...
Acerca del objeto Javascript:
// Declaration
var Obj = {
// Properties:
propertyOne: ''value'', // string
propertyTwo: 52.3654, // float
// propertyThree is an object inside ''Obj''
// defined by the braces
// which may naturally contain its own properties & methods
propertyThree: {
propTrheeProperty: 42, // int
propTrheeAnotherProperty: ''whatever'',
thePropThreeMethod: function () {
// your function code
}
// and so on, no coma after the last property/method
},
// and so on
// ''Obj'' - Methods:
methodOne: function () {
// your function code
},
methodTwo: function () {
// your function code
}
// and so on, no coma after the last property/method
}
Hay dos posibilidades para acceder a las propiedades (pero no a los métodos, ver a continuación), llamado Property Accessor :
- La "notación de puntos":
Con la notación de puntos, puede acceder a propiedades y métodos
var objOne = new Obj(); // Create a new instance of Obj
objOne.propertyTwo; // 52.3654
var objTwo = new Obj(); // Another instance of Obj
objTwo.propertyThtree.propTrheeProperty; // 42
objTwo.propertyThtree.propTrheeAnotherProperty; // whatever
// Accessing methods
objOne.methodOne(); // whatever your function methodOne() returns or does
objTwo.methodTwo(); // whatever your function methodTwo() returns or does
- La "notación de paréntesis":
Con la notación de corchetes, también puede acceder a propiedades y métodos
objTwo[''propertyThtree''][''propTrheeProperty'']; // 42
objOne[''methodOne'']();
en lugar de
objTwo.propertyThtree.propTrheeProperty; // 42
objOne.methodOne();
En tu caso, eso significa:
window.console.log(test.waybill_log.TrackingResult.HAWBEntity.HAWBID);
// 282829899
O
window.console.log(test.waybill_log.TrackingResult.HAWBEntity);
// Should give something like: Object { HAWBID: ''282829899''}
O
window.console.log(test.waybill_log.HAWBItemEntity);
// null