有沒有人知道如果kendo網格可以始終設置爲編輯模式?Can Kendo Grid可以一直處於編輯模式嗎?
我們不希望用戶點擊單元格或按鈕來激活編輯模式。我們希望它的小部件能夠隨時顯示並可用。
有沒有可能?
有沒有人知道如果kendo網格可以始終設置爲編輯模式?Can Kendo Grid可以一直處於編輯模式嗎?
我們不希望用戶點擊單元格或按鈕來激活編輯模式。我們希望它的小部件能夠隨時顯示並可用。
有沒有可能?
除了使用批處理編輯模式,您可以嘗試設置每個列的模板並使用MVVM將輸入元素綁定到數據項。
$("#grid").kendoGrid({
dataSource: {
schema: {
model: {
id: "id",
fields: {
id: { editable: false }
}
}
}
data: [
{ id:1, age: 30, name: "John Doe" }
]
},
columns: [
{ field: "id", width: 50 },
{ field: "age", template: "<input data-bind='value: age' data-role='numerictextbox'>" },
{ field: "name", template:"<input data-bind='value: name' >" }
],
dataBound: function() {
var rows = this.tbody.children();
var dataItems = this.dataSource.view();
for (var i = 0; i < dataItems.length; i++) {
kendo.bind(rows[i], dataItems[i]);
}
}
});
這裏有一個現場演示:http://jsbin.com/ApoFobA/2/edit
我發現上面的回答是優秀的。然而,一個問題是,Kendo在刷新網格時(例如排序或篩選時或調用refresh()時)不會清除綁定並刪除網格的DOM元素。結果是dataItems將有越來越多的「更改」事件排隊 - 有點內存泄漏。這可以通過在dataBinding事件中解除綁定來避免,如下所示:
dataBinding: function() {
var rows = this.tbody.children();
for (var i = 0; i < rows.length; i++) {
kendo.unbind(rows[i]);
}
}
謝謝。這是我所需要的最接近的答案。 – ThiagoPXP
謝謝你。這對我來說很好,直到我啓用了分組,並且按列對輸入字段進行分組時,所有內容都被清空了。一個問題下來,還有一個要去...... :) – wavedrop