如何解决如何在MVC中将List <T>对象传递给Javascript?
| 我想做这样的事情: $(document).ready(function ()
{
calendarGrid.create(@Model.Events)
}
Model.Events是一个列表。
我尝试使用:
System.Web.Script.Serialization.JavaScriptSerializer.Serialize(@ Model.Events)
JSON.parse(@ Model.Events)
JSON.strigngify(@ Model.Events)
没有任何帮助。
解决方法
您需要编写代码,将服务器端列表序列化为发送到客户端的代码。尝试这样的事情:
calendarGrid.Create(@Html.Raw(JavaScriptSerializer.Serialize(Model.Events)))
@Html.Raw(...)
的全部内容将被输出到输出。
,通过使用以下方法设置javascript变量,我已经取得了巨大的成功:
<script>
var eventList = @(Html.Raw(Json.Encode(Model.Events)));
$(document).ready(function () {
calendarGrid.create(eventList);
});
</script>
从那里,您可以自由地将eventList变量用作JSON对象。
技巧是使用Html.Raw来防止发生进一步的编码
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。