Kendo ui KendoUI网格自定义可排序对象警报或断点未命中

Kendo ui KendoUI网格自定义可排序对象警报或断点未命中,kendo-ui,grid,jquery-ui-sortable,Kendo Ui,Grid,Jquery Ui Sortable,我正在尝试为剑道网格中的某些列强制执行一个自定义的可排序比较函数,特别是一些货币值,可以是负数、null、0或正数。我发现不同浏览器的排序不一致,因此尝试在自定义可排序对象的函数中添加断点或警报,但两者都没有被命中 下面是“薪资”列的设置示例。薪资字段设置为类型编号 { field: "Salary", format: "{0:c2}", sortable: { compare: function (a, b) { x = kend

我正在尝试为剑道网格中的某些列强制执行一个自定义的可排序比较函数,特别是一些货币值,可以是负数、null、0或正数。我发现不同浏览器的排序不一致,因此尝试在自定义可排序对象的函数中添加断点或警报,但两者都没有被命中

下面是“薪资”列的设置示例。薪资字段设置为类型编号

{
    field: "Salary",
    format: "{0:c2}",
    sortable: {
        compare: function (a, b) {
            x = kendo.parseFloat(a);
            y = kendo.parseFloat(b);
            if (isNaN(x) || x === null) {
                x = 0;
            }
            if (isNaN(y) || y === null) {
                y = 0;
            }
            alert('x = ' + x + '; ' + 'y = ' + y);
            return (x === y ? 0 : ((x > y) ? 1 : -1));
        }
    }
}
我设置了一个JSFIDLE all来演示这种行为

这并不能提供答案


谢谢。

您必须引用要排序的字段。例如,FirstName

sortable: {
    compare: function (a, b) {
        return (a.FirstName === b.FirstName ? 0 : ((a.FirstName > b.FirstName) ? 1 : -1));
    }
}

我还认为你的小提琴中没有正确地提到剑道和jQuery。试试这个:

看来可能是我们的版本(2013.1.319)造成的。只要我把你的小提琴换成那个版本,警报就不会再响了。我已经在可排序的自定义对象中尝试了字段名。谢谢