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のModelのリストから生成されます。 私は@Html.Raw(Json.Encode(ViewBag.materialDetails))
を使用してリストをJSONに変換します。二重引用符がある場合、forEach
には入りません。スクリプトでこのJSONを正確に解析できませんか?
すべてのヘルプは高く評価され:)あなたはそれかJSON.parse
その周りティックを追加する必要はありませんので、
が、それは文字列 ' "ItemNameの" であるときに、2つの\\は、それをエスケープしなければなりませんうまくいくかもしれない
:あなたは
に変更した場合は
"アイテム1 \\ "" ' – epascarello