【问题标题】:Bind array from model to knockout observable array将模型中的数组绑定到淘汰的可观察数组
【发布时间】:2017-01-30 18:27:20
【问题描述】:

我的 MVC 控制器中有一个字符串列表:

fullCourse = new List<string>();

我想将它绑定到&lt;select&gt;,这样我就可以将所选项目提交给同一控制器中的另一个操作方法

<select data-bind="options:info, optionsCaption:'Choose',optionsText:'name', value:chosenInfo "></select>

我做了一个按钮来填充选择

<input type="button" data-bind="fillSelect " value="Clik" />

我尝试将它绑定到这样的可观察数组:

this.fillSelect = function myFunction() {
        for ( i = 0; i < @Model.fullCourse.Count; i++) {
             this.info.push({name:@Model.fullCourse[i]);
        }
};

this.info = ko.observableArray([]);

问题是语法错误:

i 在此范围内未定义

this.info.push({name:@Model.fullCourse[i]);

恐怕我做错了。

有没有更简单的方法?或者我的方法可行吗?

【问题讨论】:

    标签: asp.net-mvc knockout-2.0


    【解决方案1】:

    你需要var i,即:

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

    【讨论】:

    • 问题不在循环 for 语句中,i 是工作,除非我在:@Model.fullCourse[i]
    • 你还没有定义i。那是你的问题。或许,在争论之前先尝试一下解决方案?
    猜你喜欢
    • 2014-08-22
    • 1970-01-01
    • 2014-09-28
    • 2012-09-08
    • 2015-10-05
    • 2014-10-29
    • 2013-08-26
    • 2013-05-19
    相关资源
    最近更新 更多