【发布时间】:2014-04-07 10:34:10
【问题描述】:
我正在尝试一个将淘汰赛可观察数组绑定到 kendogrid 的示例,但没有成功。
下面是我创建了一个名为 - AllUsers 的可观察数组的代码,它是一个用户对象数组。
define(['kendo'], function (kendo) {
function user(userID) {
return {
userID: ko.observable(userID),
};
}
var vm = {
activate: activate,
attached: attached,
AddUser: AddUser,
AllUsers: ko.observableArray([]),
userID: ko.observable(),
};
return vm;
function activate() {
return true;
}
function attached() {
$("#grid").kendoGrid({
dataSource: vm.AllUsers,
groupable: true,
sortable: true,
height: 250,
pageable: true,
pageSize: 5,
columns: [{
field: 'userID',
title: 'User ID',
width: 200
},
{
command: 'destroy',
title: ' ',
width: 150
}]
});
return true;
}
function AddUser() {
vm.AllUsers.push(new user("testing"));
return true;
}
});
相同的html代码:
<div id="header" class="form-horizontal form-widgets">
<fieldset>
<label for="userID" class="required" style="margin: 20px 20px 20px 20px">User Id</label>
<input id="userid" style="margin-right:20px" class="k-textbox" data-bind="value: userID" required />
<button type="button" id="addUserButton" data-bind="click: AddUser" style="margin-bottom:30px">Add user</button>
</fieldset>
<div id="grid"></div>
</div>
谁能告诉我绑定有什么问题? 单击添加用户按钮时,应将用户添加到 observableArray,然后应反映在网格中。两者都没有发生。
提前致谢。
【问题讨论】: