在JavaScript中将复杂值插入现有数组

时间:2013-10-16 11:40:56

标签: javascript arrays razor

我需要使用ASDP.NET MVC3

在JavaScript上创建结构类型(复杂模型)列表
var myItems = new Array(@Model.Count());    
var CreatedItem;
for (i = 1 ; i<= @Model.Count()-1;i++)
{
    CreatedItem = {
        'DayPartID': i,
        'Name': $("#Name_"+i).val(),
        'IsEnable': $("#IsEnable_"+i).val(),
        'Time': $('#timepicker-'+ i).val()
    };

    myItems.push(CreatedItem);
    alert(myItems[i]);
}

问题是我在重复结构“for”结束后无法正确填充“myItems”。

1 个答案:

答案 0 :(得分:0)

您正在初始化数组,如:

var arr = new Array(2);

然后你做:

arr.push("foo");

这会给你:

[ undefined, undefined, "foo" ]

将initialaztion更改为空数组,如:

var myItems = [];

或者不要推,而是设置,如:

myItems[i] = CreatedItem;

此外,你的循环从1开始 - 这很奇怪。改为:

for (i = 0 ; i < @Model.Count(); i += 1) {