如何访问鉴于这种JSON响应此JSON响应
问题描述:
[
{
"diccioDatosForm": {
"errorMessage": "Verifique los datos invalidos ingresados...",
"encargadoLocalidad": "Ingrese un valor",
"responseStatus": "ERR",
"segundoNombre": "OK",
"encargadoProvincia": "Ingrese un valor"
}
},
{
"listaEncargados": []
}
]
我需要访问密钥“diccioDatosForm”的元素。 当我打印JSON与警报(alert(responseData)
),我得到:
[object Object],[object Object]
,并试图做到这一点时,我没有得到任何东西:
alert(responseData.diccioDatosForm.errorMessage)
答
像这样:
responseData[0].diccioDatosForm.errorMessage
responseData
本身是一个数组包含2个元素
答
这是因为你正在提醒正在返回的数组。 要访问所需的字段,你应该做的:
responseData[0].diccioDatosForm.diccioDatosForm
我知道什么,我会说是不是你的问题的一部分,但我建议你检查你的JSON结构,因为它的怪有一个数组两种不同的东西。
我会用这样的:
{
"configs": {
"segundoNombre": "OK",
"encargadoProvincia": "Ingrese un valor",
"encargadoLocalidad": "Ingrese un valor"
},
"error": {
"message": "Verifique los datos invalidos ingresados..."
},
"itens": [] // "encargados" list here
}
这样做,你将有标准通过YOUT应用程序中使用。接取邮件错误你可以这样做:
responseData.error.message
答
它看起来像你想找到一个参数,它是在一个对象,它在你的JSON数组的第一个元素的值。在纯Javascript中,这意味着:
var data = [{"diccioDatosForm": {"errorMessage": /* ... */]
// grab diccioDatosForm from first array element:
var diccioDatosForm = data[0].diccioDatosForm;
答
您的responseData
对象是一个包含对象的数组。因此,您必须在引用内部对象时使用索引。
responseData[0].diccioDatosForm.errorMessage
你用什么方法得到这个响应? – fengd 2012-07-18 02:51:03