2013-04-07 75 views
1

如何删除从api返回的嵌套json对象,如下所示,并通过以通用方式使用jquery拆开对象将其显示为单个字段。这里是我的JSON对象Uni a JSon从api返回的对象

"response": { 
"content": 
"[ {  
     "Id": 0,  
    "Name": "Some name",  
    "createdOnDate": "0001-01-01T00:00:00",  
    "keyValueList": 
     [  
      {   
      "Key": "key1",   
      "Value": "Sample Data key 1"  
      },  
      {   
      "Key": "key2",   
      "Value": "sample data key 2 
     ] }]" 

这是它应该如何解开后。

[{ 
    "Id": 123, 
     "Name": "some name", 
     "createdOnDate": "2013-01-22T17:02:00", 
     "key1": "this is my key1", 
     "key2": "this is my key2" 

}] 
+0

想将它们分配给独立的变量。或者你只想保留第一个解释请 – Josh 2013-04-07 20:09:19

+0

只保留第一个。不想添加单独的变量。 – user2221069 2013-04-07 20:12:41

+0

发布之前你有没有尝试过任何东西? – rcdmk 2013-04-07 20:15:52

回答

1

这是无效的JSON。确保你以前有效。 然后,您可以遍历属性并按照您的需要设置它们。

$.each(content[0]['keyValueList'], function (k, value) { 
    content[0][value['Key']] = value['Value'] 
}); 

delete content[0]['keyValueList']; 

http://jsfiddle.net/TjQzv/3/

+1

这是真的,但它应该是一个评论(我期待从提问者澄清) – 2013-04-07 20:18:51

+0

我手动输入,所以可能错过了格式。是。我正在验证json。我怎样才能把这些关键价值对展现为个别领域? – user2221069 2013-04-07 20:20:11

+0

@ user2221069请更正格式。另请参阅rcdmk的评论。 – 2013-04-07 20:21:22