【发布时间】:2011-01-07 11:11:04
【问题描述】:
我正在使用 James Newton-King 的优秀 JSON 库创建一个 JSON 字符串。 我使用以下代码行创建 JSON 字符串:
string userJSON = Newtonsoft.Json.JsonConvert.SerializeObject(existingAdminUser, Newtonsoft.Json.Formatting.None);
结果如下:
"{\"LoginId\":\"0f1b6c88-08ec-416f-b221-7568dc7c242a\",\"Firstname\":\"Charles\",\"Surname\":\"Barber\",\"Fullname\":\"Charles Barber\",\"Email\":\"charles17@test76876.com\",\"Systems\":null,\"IsValid\":false,\"IsValidExcludingSystems\":true,\"ValidationMessage\":\"\"}"
然后我使用以下代码行将此字符串放入我的 http 响应中:
HttpContext.Current.Response.Write("<input type=\"hidden\" name=\"adminextrainfo\" id=\"adminextrainfo\" value=\"" + userJSON + "\" />");
然后我尝试在客户端访问/解析 JSON,使用:
var userdetails = $.parseJSON(valueOfHiddenField);
解析尝试失败,如果我尝试查看字段的内容(使用警报),那么我只会看到第一个 { char.似乎 \" 字符序列被 js 视为换行符。如何在服务器上对隐藏字段值进行编码,或者如何在客户端处理隐藏字段值以使其“处理”\ " 字符序列?
非常感谢。
【问题讨论】: