2015-06-20 50 views
-1

访问值我有以下JSON文本格式无法从JSON对象,它是在不同寻常的形式

[ 
{"fields": {"Num": 34, "Univ": "TUni"}, "pk": 1, "model": "app.unbased"}, 
{"fields": {"Num": 10, "Univ": "VTU"}, "pk": 1, "model": "app.unbased"} 
] 

我试图访问使用jQuery的第一个项目的民字段值,但无法得到它。 我已经通过其他有关JSON的问题,但没有用,因为这种形式是不寻常的。

下面我试图在成功函数

success: function (json) { 
      $('#PieStats').html(json.message); 
      var data_json = $.parseJSON(json.message); 
      alert(typeof(json.message)); // Output : string 
      alert(data_json[0][0]); // Output : Undefined 
      alert(typeof (json) + ' ' + typeof (data_json)); // Output : object object 
      $('.ajaxProgress').hide(); 
     } 

我也曾尝试使用data_json [ '域'] [0] [0]和其他可能的方式 - 不工作

上午什么我错过了?

+0

'data_json [0] .fields.Num'应该这样做 –

+0

你错过了只有顶层结构是一个数组。 –

+0

非常感谢Wolff!当我们不确定字段名称时如何访问json? – user3128771

回答

0

检查:

var jsonString = '[\ 
{"fields": {"Num": 34, "Univ": "TUni"}, "pk": 1, "model": "app.unbased"}, \ 
{"fields": {"Num": 10, "Univ": "VTU"}, "pk": 1, "model": "app.unbased"}\ 
]'; 
var dataObject = JSON.parse(jsonString); 
console.log(dataObject[0].fields.Num); 
+0

如果我们不确定字段(在这种情况下是Num还是Univ),如何访问这些值? – user3128771

+0

'(var i在dataObject中){if(dataObject.hasOwnProperty(i)){console.log(i,“ - >”,dataObject [i]); }}' – J2EE

+0

你的代码只给出0和1。我希望看到34,TUvi,10,VTU(值) – user3128771

0

data_json [0] .fields.Num是你在找什么。阵列中的每个元素都是一个对象,这就是为什么你得到了一个未定义的data_json [0] [0]

+0

非常感谢Sasikanth!当我们不确定字段名称(在这种情况下是Num)时如何访问json? – user3128771