如何从 JSON 对象访问一个名称值对
本文关键字:一个 JSON 对象 访问 | 更新日期: 2023-09-27 17:55:58
假设我有这个JSON对象通过
JavascriptSerializer oSer = new JavascriptSerializer();
string sJson = oSer.Serialize(myObject);
我通过 AJAX 调用返回给客户端的 JSON 是
"{'"IsValid'":false,'"EmployeeId'":null,'"fullName'":'"a'",'"EmailAddress'":'"n/a'",'"PhoneNumber'":'"n/a'"}"
所以在$.parseJSON(result);
之后
是否可以只检索 IsValid 值而不循环遍历整个对象名称/值对?
更新:似乎当 JSON 到达客户端时,名称值对之间的 : 会更改为 =。 所以现在我必须弄清楚如何将 = 替换为 : 这样我就可以像真正的对象属性表示法一样解析和访问它。
success: function (data)
{
data.replace("=", ":");
}
不行。
此外,我将 ajax 数据类型属性设置为"json"
无论如何,您不必遍历每个字段 - 只需将其作为 parseJSON
结果的直接属性进行访问即可。
var obj = $.parseJSON(result);
alert(obj.IsValid);
var myObj = $.parseJSON(result);
myObj.IsValid
确保您的结果用引号括起来,单引号为 Ok。
当然:
var obj = jQuery.parseJSON(result);
alert(obj.IsValid);
我发现了问题。 在
$.ajax(
{
type: "POST",
data: "myJson=" + jsonData,
url: "/myURL",
success: function (result)
{
//some code
}
});
我有数据类型:"json"这就是从服务转换我正确配置的 JSON 的原因