在MVC中,是否可以将C#代码中的字符串(List<string>)
数组传递给viewdata,然后在视图中检索该值? e.g:
的 C#: 的
List<string> names = new List<string>();
names.Add("a");
names.Add("b");
ViewData["names"] = names;
MVC视图:
<script type="text/javascript">
var nameList = '<%= ViewData["names"] %>';
</script>
上面的代码运行正常,但视图中返回的javascript对象是“System.Collections.Generic.List`1 [System.String]”,无法解析它以获取值。
实现该目的的正确方法是什么,而不是在C#中使用分隔符构建字符串并在视图中拆分值?
谢谢!
答案 0 :(得分:1)
您可以使用JavaScriptSerializer生成数据的JS表示。
<script type="text/javascript">
var nameList = <%= new JavaScriptSerializer().Serialize(ViewData["names"]) %>;
</script>