我为 Controller 中的字符串列表创建并赋值。我想将值列表分配给 JavaScript 变量。我怎样才能做到这一点?
Controller :
List<string> fruits = new List<string>();
list.Add('Apple');
list.Add('Banana');
list.Add('Kiwi');
ViewBag.FruitList = fruits;
看法:
var fruitList = '@ViewBag.FruitList';
当我运行程序时
fruitList
作为 System.Collections.Generic.List 1[System.String]
返回 最佳答案
方式一:
您可以使用 Html.Raw()
和 Json.Encode
:
var fruitList = @Html.Raw(Json.Encode(ViewBag.FruitList));
方式二:
您可以将
Json.Parse()
与 Html.Raw()
结合使用,将原始字符串解析为 json:var fruitList = JSON.parse('@Html.Raw(ViewBag.FruitList)');
方式3:
您也可以使用
JsonConvert
类使用 NewtonSoft JSON 将其序列化为 json:var fruitList = '@JsonConvert.Serialize(ViewBag.FruitList)';