0

我正在尝试获取一个下拉列表以填充 koGrid 的每一行。这是用于说明的 jsFiddle(请注意下拉框中没有文本)- http://jsfiddle.net/wood0615/sorg9na0/2/

这是我的html-

     <table border="0" style="width: 100%;">
    <tr>           
       <td colspan="6">
            <div class="gridStyle" data-bind="koGrid: gridOptions">&nbsp;</div>
       </td>

    </tr>
</table>

我的视图模型-

 function mainVm(){
this.WQOptions = ko.observableArray( [
                { decision: 'Approve', decisionValue: '10' },
                { decision: 'Pend', decisionValue: '5' }
    ]);

this.myData = ko.observableArray([
                { name: 'Jack Frost', age: '30' },
                { name: 'John Doe', age: '50' }]);

this.gridOptions = { 
    data: this.myData,
    autogenerateColumns: false,
    columnDefs: [
        {
            field: "name", 
            displayName: "Name"
        },
        {
            displayName: "Decision",
            cellTemplate: "<select id='Select6' data-bind=\" options: $parent.entity.WQOptions, optionsValue: $data.decisionValue, optionsText: $data.decision \"></select>"
        }

    ]
};
 };

 ko.applyBindings(new mainVm());

知道为什么下拉框没有数据是空的吗?

4

1 回答 1

1

要访问用于构建网格的视图模型,您应该使用$userViewModel

cellTemplate: "<select id=\"Select6\" \
                       data-bind=\" options: $userViewModel.WQOptions, \
                                    optionsValue: 'decisionValue', \
                                    optionsText: 'decision' \"> \
               </select>"
于 2014-10-13T12:52:12.840 回答