2013-05-13 23 views
0

所有示例都將json數據綁定到page.load事件的simpleGrid,該事件將觸發以計算列並顯示gridview。但在我的情況下,頁面的初始加載不會顯示gridview,並且點擊一個使用ajax返回數據集的按鈕,然後綁定到simpleGrid。這裏是樣本KnowckoutJS點擊按鈕動態加載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 
}); 

} 
+0

我收到錯誤無法讀取的未定義的屬性視圖模型。看到這個小提琴http://jsfiddle.net/FB6LA/8/ – DevelopmentIsMyPassion 2013-08-07 07:50:57

回答

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