将MVC模型数组传递到javascript数组时发生问题

时间:2018-08-20 11:36:43

标签: javascript arrays asp.net-mvc razor

我正在尝试将MVC模型中的数组传递到javascript数组(以在fullCalendar中使用),但是遇到了问题。

从下面开始,“ myArray”中填充了模型数组中正确数量的项,但是当我尝试显示obj.DateTime(MVC模型数组中的有效字段)时,它返回未定义。对于数组中的项目,未定义的警报显示正确的时间。

任何帮助将不胜感激。

var myArray = [];

@foreach (var d in Model.Appointments)
{
    @:myArray.push("@d");
}

myArray.forEach(function (obj) {
    alert(obj.DateTime);
})

1 个答案:

答案 0 :(得分:0)

您不能使用@d直接将C#对象转换为Java脚本对象。您应该对C#对象进行编码以使其成为json值。

此代码会将您的C#对象编码(序列化)为JSON模型。

@Html.Raw(Json.Encode(d));

Here is another question like yours