Kendo 自定义编辑器破坏了网格排序
Kendo Grid Sort Broken with Custom Editor
我的示例演示了带有自定义内联编辑器的官方 kendo 演示无法按自定义编辑器列(类别)排序:http://dojo.telerik.com/agoBi/2
这是原始 kendo 示例(未启用排序):
http://demos.telerik.com/kendo-ui/grid/editing-custom
...为此,我添加了以下代码以便能够对网格进行排序(请参阅顶部的示例):
sortable: true
以上声明得到 Kendo 官方支持,适用于任何其他(正常)列。
有谁知道如何在保留自定义编辑器列的同时添加此功能?
这是因为网格不知道如何处理嵌套对象。如果要允许对嵌套对象进行排序,则必须将列绑定到该嵌套对象。这里Dojo example
尤其是更改在具有类别的行上的列对象中:
{ field: "Category.CategoryName", ...
这个小修改将允许排序,但它给下拉编辑器带来了一个小问题。如果您在该编辑器中 select 某些内容,则会显示值,但通常我们对值感兴趣。无论如何,它也可以通过在编辑器中进行小的修改来避免,就像这个 Dojo example - 特别是删除了 data-bind 属性所以你必须手动修改记录。
我的示例演示了带有自定义内联编辑器的官方 kendo 演示无法按自定义编辑器列(类别)排序:http://dojo.telerik.com/agoBi/2
这是原始 kendo 示例(未启用排序):
http://demos.telerik.com/kendo-ui/grid/editing-custom
...为此,我添加了以下代码以便能够对网格进行排序(请参阅顶部的示例):
sortable: true
以上声明得到 Kendo 官方支持,适用于任何其他(正常)列。
有谁知道如何在保留自定义编辑器列的同时添加此功能?
这是因为网格不知道如何处理嵌套对象。如果要允许对嵌套对象进行排序,则必须将列绑定到该嵌套对象。这里Dojo example 尤其是更改在具有类别的行上的列对象中:
{ field: "Category.CategoryName", ...
这个小修改将允许排序,但它给下拉编辑器带来了一个小问题。如果您在该编辑器中 select 某些内容,则会显示值,但通常我们对值感兴趣。无论如何,它也可以通过在编辑器中进行小的修改来避免,就像这个 Dojo example - 特别是删除了 data-bind 属性所以你必须手动修改记录。