Kendo ui 编辑时kendo ui web网格排序错误
我已经将内联编辑和可编辑列显示为下拉列表。当我选择任何项目,然后进行排序时,我得到[object object]作为单元格的值。到目前为止,我已经编写了如下代码来删除它Kendo ui 编辑时kendo ui web网格排序错误,kendo-ui,kendo-grid,Kendo Ui,Kendo Grid,我已经将内联编辑和可编辑列显示为下拉列表。当我选择任何项目,然后进行排序时,我得到[object object]作为单元格的值。到目前为止,我已经编写了如下代码来删除它 dataBound: function(e) { if(e.sender != null) { var container = e.sender; var rows = container.tbody[0].childN
dataBound: function(e) {
if(e.sender != null) {
var container = e.sender;
var rows = container.tbody[0].childNodes;
$.each(rows, function (i, val) {
var cols = rows[i].childNodes;
$.each(cols, function (k, value) {
if(cols[k].innerText == "[object Object]")
cols[k].innerText = "";
});
});
}
}
有人有更好的解决方案吗?我通过在click事件上调用grid header解决了这个问题,我在其中检查该列是否可以排序,如果可以,然后调用grid的cancelChanges()方法
$(function () {
var gr = $('#grid').data().kendoGrid;
gr.thead.on('click', function (e) {
if((e.target && e.target.href) || (e.target.cellIndex && gr.columns[e.target.cellIndex].sortable))
gr.cancelChanges();
});
});
此外,将sortable属性添加到网格中的字段,如下所示,即使默认值为sortable=true
columns: [
"ProductName",
{ field: "UnitPrice", title: "Unit Price", sortable:true, format: "{0:c}", width: "100px" },
{ field: "UnitsInStock", title:"Units In Stock", sortable:true, width: "100px" },
{ field: "Discontinued", sortable:false, width: "100px" },
{ command: ["edit", "destroy"], title: " ", sortable:false, width: "172px" }]