Kendo 网格排序不同的顺序
Kendo Grid sorting a different order
我们有一列显示在文本中,但是排序应该是数字。
是否可以在 Kendo UI 网格中按可自定义的顺序对可排序列进行排序,在我的例子中是按数字字段?
您应该可以使用列的 sortable.compare-函数:http://docs.telerik.com/kendo-ui/api/javascript/ui/grid#configuration-columns.sortable.compare
<div id="grid"></div>
<script>
var numbers = {
"one" : "a",
"two" : "b",
"three": "c"
};
var dataSource = new kendo.data.DataSource({
data: [
{ id: 1, item: "two" },
{ id: 2, item: "one" },
{ id: 3, item: "three" }
]
});
$("#grid").kendoGrid({
dataSource: dataSource,
sortable: true,
columns: [{
field: "item",
sortable: {
compare: function(a, b) {
if (numbers[a.item] > numbers[b.item]) {
return 1;
} else if (numbers[a.item] < numbers[b.item]) {
return -1;
} else {
// the characters are equal.
return 0;
}
}
}
}]
});
我们有一列显示在文本中,但是排序应该是数字。
是否可以在 Kendo UI 网格中按可自定义的顺序对可排序列进行排序,在我的例子中是按数字字段?
您应该可以使用列的 sortable.compare-函数:http://docs.telerik.com/kendo-ui/api/javascript/ui/grid#configuration-columns.sortable.compare
<div id="grid"></div>
<script>
var numbers = {
"one" : "a",
"two" : "b",
"three": "c"
};
var dataSource = new kendo.data.DataSource({
data: [
{ id: 1, item: "two" },
{ id: 2, item: "one" },
{ id: 3, item: "three" }
]
});
$("#grid").kendoGrid({
dataSource: dataSource,
sortable: true,
columns: [{
field: "item",
sortable: {
compare: function(a, b) {
if (numbers[a.item] > numbers[b.item]) {
return 1;
} else if (numbers[a.item] < numbers[b.item]) {
return -1;
} else {
// the characters are equal.
return 0;
}
}
}
}]
});