2016-05-12 9 views
1

Ich habe einen JSON und ich will seinen Knoten unter einem Knoten erhalten, aber net bekommen, wie es cani bekommen: Hier ist die JSON:Wie bekomme ich Knoten von Json mit jquery?

{ 
    "price": { 
    "VPO": 125, 
    "MSRP": 129.99, 
    "ONSALE": 99.97, 
    "a_bucks": 3.75 
    }, 
    "short_info": { 
    "product_name": "MARMOT PRECIP JACKET", 
    "category": "WOMEN'S", 
    "weight": { 
     "lbs": 0.6, 
     "kg": 0.27 
    }, 
    "SKU": "KNXSU921", 
    "part_info": "#46200", 
    "rating": 4, 
    "out_of_stock": false 
    }, 
    "product_variants": { 
    "XS": { 
     "Arctic Navy": { 
     "InStock": true, 
     "Colorcode": "HMN", 
     "InStore": { 
      "NANAIMO": { 
      "value": "true", 
      "code": "154" 
      } 
     } 
     }, 
     "Black": { 
     "InStock": true, 
     "Colorcode": "HMN", 
     "InStore": { 
      "NANAIMO": { 
      "value": "true", 
      "code": "154" 
      } 
     } 
     }, 
     "Blue Sea": { 
     "InStock": true, 
     "Colorcode": "HMN", 
     "InStore": { 
      "NANAIMO": { 
      "value": "true", 
      "code": "154" 
      } 
     } 
     }, 
    } 
    } 
} 

Ich möchte Elemente des (Nodes) Name unter XS bekommen, dh "Arctic Marine", "Black", "Blue Sea" usw.

ich folgenden Code verwendet haben:

$.each(dataObj.product_variants.XS, function (i, item) { 
    alert(item) 
}); 

Aber nicht immer, wie kann ich die gewünschte Ausgabe zu erhalten. Bitte helfen Sie.

Vielen Dank im Voraus.

+0

Vielleicht eine triviale Bemerkung, aber Ihr JSON-Schnipsel formatiert ist nicht gut. Hast du das schon überprüft? –

+0

@AlbertoDeCaro, ja, ich habe nur die erforderlichen Elemente bearbeitet und eingefügt –

Antwort

1

können Sie versuchen,

$.each(dataObj.product_variants.XS, function (i, item) { 
    alert(i) 
}); 

Es kann auch

for(var i in dataObj.product_variants.XS) { 
    alert(i) 
}); 

Wenn Ihr dataObj.product_variants.XS gewesen, Array hätte durch Javascript erreicht werden i wäre gewesen Index haben des Elements.

+1

https://jsfiddle.net/8bjdmdeg/ – madalinivascu

3

Sie nicht jQuery dafür brauchen. Sie können normales JavaScript verwenden:

Object.keys(dataObj.product_variants.XS) 

Dies wird ein Array der Schlüssel zurückgeben. z.B.

[ "Arctic Navy", "Black", "Blue Sea" ] 
Verwandte Themen