Knockout JS动态加载单击按钮上的simpleGrid列

时间:2013-05-13 16:02:13

标签: knockout.js

所有示例都在page.load事件中将json数据绑定到simpleGrid,它将触发计算列并显示gridview。但在我的情况下,页面的初始加载将不会显示gridview,并且在单击使用ajax返回数据集的按钮时,然后绑定到simpleGrid。这是样本

Fiddle

我试图订阅observableArray,但这既不能重新生成网格,任何提示?谢谢!

function viewModel() {
var self = this;
self.queryResult = ko.observableArray();
self.update = function (data) {
    //this is an ajax call and return dateset back
    $.each(initialData, function (index, item) {
        self.queryResult.push(item);
    });
};
self.gridViewModel = new ko.simpleGrid.viewModel({
    data: self.queryResult,
    pageSize: 10
});

}

1 个答案:

答案 0 :(得分:0)

您从未在简单网格中定义任何标题。我添加如下

   self.gridViewModel = new ko.simpleGrid.viewModel({
   data: self.queryResult,
    columns: [
        { headerText: "Name", rowText: "name" },
        { headerText: "Sales ", rowText: "sales" },
        { headerText: "Price", rowText: function (item) { return "$" + item.price.toFixed(2) } }
    ],
    pageSize: 4
});

查看更新的小提琴here