如何获得JSON密钥和价值?
我已经写了下面的代码来获得来自webservice的JSON结果。
function SaveUploadedDataInDB(fileName) { $.ajax({ type: "POST", url: "SaveData.asmx/SaveFileData", data: "{'FileName':'" + fileName + "'}", contentType: "application/json; charset=utf-8", dataType: "json", success: function (response) { var result = jQuery.parseJSON(response.d); //I would like to print KEY and VALUE here.. for example console.log(key+ ':' + value) //Addess : D-14 and so on.. } }); }
这里是来自webservice的回应 :
请帮我打印键和它的价值
看起来你正在取回一个数组。 如果总是只包含一个元素,你可以这样做(是的,这和Tomalak的回答几乎是一样的):
$.each(result[0], function(key, value){ console.log(key, value); });
如果你可能有多个元素,你想遍历它们,你可以嵌套$.each()
:
$.each(result, function(key, value){ $.each(value, function(key, value){ console.log(key, value); }); });
$.each(result, function(key, value) { console.log(key+ ':' + value); });
首先,我看到你正在使用一个明确的$.parseJSON()
。 如果这是因为您在服务器端手动序列化JSON,则不要。 ASP.NET会自动JSON序列化你的方法的返回值 ,jQuery也会自动为你反序列化。
要遍历数组中的第一个项目,请使用如下所示的代码:
var firstItem = response.d[0]; for(key in firstItem) { console.log(key + ':' + firstItem[key]); }
如果有多个项目(从截图中很难分辨出来),那么你可以遍历response.d
,然后在这个外部循环中使用这个代码。