【发布时间】:2017-10-27 08:25:31
【问题描述】:
var var1 = JSON.parse('[{"ItemId":1, "ItemName":"item 1\"", "Unit":"Nos","Remarks":null, "ConsumedQuantity":1.00},
{"ItemId":1253, "ItemName":"item 2", "Unit":"Nos", "Remarks":null, "ConsumedQuantity":1.00}]');
var1.forEach(function (e) {
Object.keys(e).forEach(function (key) {
if (e[key] == id) {
//doing some stuff here
}
});
});
当 JSON 中的值不包含双引号时,此代码可以完美运行。此 JSON 是从 MVC 中的模型列表生成的。
我使用@Html.Raw(Json.Encode(ViewBag.materialDetails)) 将列表转换为 JSON。如果有双引号,则不会进入forEach。
任何帮助表示赞赏:)
【问题讨论】:
-
在字符串
"ItemName":"item 1\\""时应该是两个\\来转义它
标签: javascript json asp.net-mvc razor