我需要在JavaScript或jQuery中解析这个JSON。请帮助我获取以下JSON中的产品列表。
获取产品清单
{
"main": {
"ProductsData": {
"Product": {
"AdjustmentTypeID": "0",
"BrandID": "4",
"BrandName": "Joseph Joseph",
"ChildrenGenerated": "False",
"Cost": "8.50",
"Description": "<span style=\"line-height: 120%; \">The ingenious dual-chamber design of this measuring jug eliminates the need for separate measuring spoons, cups and jugs. Use the small chamber to accurately measure liquids from as little as a single teaspoon (5ml), and then for greater volumes (up to 550ml) simply turn the jug 180º and use the larger chamber. Made from SAN material. Heat resistant to 90°C \\/ 190°F.<\\/span>\\u000d\\u000a<p class=\"MsoNormal\" style=\"margin-bottom:0cm;margin-bottom:.0001pt;line-height:\\u000d\\u000a120%;mso-layout-grid-align:none;text-autospace:none;vertical-align:middle\"><br \\/>\\u000d\\u000aDesign registered<span lang=\"EN-US\"><o:p><\\/o:p><\\/span><\\/p>\\u000d\\u000a<p class=\"BasicParagraph\"><span style=\"font-size:11.0pt;line-height:120%;\\u000d\\u000afont-family:"Calibri","sans-serif";color:windowtext\"><br \\/>\\u000d\\u000aDimensions 7x 7 x 15cm<o:p><\\/o:p><\\/span><\\/p>",
"DownloadFile": "",
"InternalCode": "502842009381 0",
"IsProductActive": "False",
"ManufacturerID": "11",
"ManufacturerName": "Joseph Joseph",
"OptionMatchGroupID": "",
"ParentProduct": "",
"ProductID": "80",
"ProductName": "2-in-1 Measuring Jug",
"ProductTypeDescription": "Compound Product",
"ProductTypeID": "8",
"SiteID": "57",
"StockLevel": "",
"SupplierID": "3",
"SupplierName": "Joseph Joseph",
"UseStockControl": "False",
"VatRate": "20"
}
}
}
}
答案 0 :(得分:2)
在jQuery中使用parseJSON
method。
示例:
var obj = $.parseJSON(yourJsonString);
alert(obj.main.ProductsData.Product.Cost);
答案 1 :(得分:2)
从文件中读取JSON:
myobject = $.parseJSON("myfile.json")
或者从字符串中读取JSON:
myobject = $.parseJSON(jsonString)
现在获取您想要的数据:
//Loops into every Product in ProductsData:
$(myobject.main.ProductsData.Product).each(function(index, element){
//Do something with Product variable such as below
alert(element.BrandName + ' ' + element.SupplierName);
}
请务必使用http://jsonlint.com/
检查您的JSON数据答案 2 :(得分:1)
只需使用JSON.parse
函数(MDN docu link)
yourObj = JSON.parse( jsonstring );
之后,您可以通过对象访问JSON字符串的任何属性,例如
yourObj['main']['ProductsData']['ProductName']
将返回
"2-in-1 Measuring Jug"
在你给出的例子中。
答案 3 :(得分:0)
您可以使用jquery函数$.parseJSON(jsonString)
来获取json对象
如果jsonString存储您给出的字符串,
jsonObj = $.parseJSON(jsonString);
jsonObj.main.ProductsData.Product
将是一系列产品
答案 4 :(得分:0)
使用javascript:JSON.parse(yourjavascriptobjecttoparse);
然后var productx = yourjavascriptobjecttoparse['main']['ProductsData']['Product']
引用该产品。
答案 5 :(得分:0)
您可以使用
var object = $.parseJSON(jsonString);
现在您可以像本机JavaScript对象一样访问此对象:
object.main.ProductsData.Product.BrandName // Joseph Joseph
答案 6 :(得分:0)
有一个名为jquery-json的jQuery的有趣JSON插件。
它允许您序列化和反序列化JSON。它的工作原理如下:
var myObject = { property1: "value1", property2: "value2" };
// Converts myObject to JSON
var serialized = $.toJSON(myObject);
// Parses generated JSON into a new object
var deserialized = $.evalJSON(serialized);