Sorting 为ASP.NET Telerik MVC网格列设置列上的排序方向单击
目前正在Asp.net中使用Telerik MVC 3.0。我有几列网格。Sorting 为ASP.NET Telerik MVC网格列设置列上的排序方向单击,sorting,telerik,grid,telerik-mvc,Sorting,Telerik,Grid,Telerik Mvc,目前正在Asp.net中使用Telerik MVC 3.0。我有几列网格。 页面加载时,行被绑定。当我单击列时,它应该在第一次单击时按降序排序,而不是按升序排序。网格不支持这种排序配置。它总是先对ASC排序,然后再对DESC排序。网格不支持这种排序配置。它总是先对ASC排序,然后再对DESC排序。您可以通过覆盖网格的toggleOrder方法来完成。 首先,定义一个新的ReverseToggleOrder函数: function ReverseToggleOrder(l) { l =
页面加载时,行被绑定。当我单击列时,它应该在第一次单击时按降序排序,而不是按升序排序。网格不支持这种排序配置。它总是先对ASC排序,然后再对DESC排序。网格不支持这种排序配置。它总是先对ASC排序,然后再对DESC排序。您可以通过覆盖网格的toggleOrder方法来完成。 首先,定义一个新的ReverseToggleOrder函数:
function ReverseToggleOrder(l) {
l = typeof l == "number" ? this.columns[l] : l;
var n = "desc";
if (l.order == "desc") {
n = "asc";
} else {
if (l.order == "asc") {
n = null;
}
}
l.order = n;
var m = $.inArray(l, this.sorted);
if (this.sortMode == "single" && m < 0) {
$.each(this.sorted, function () {
this.order = null;
});
this.sorted = [];
}
if (m < 0 && n) {
this.sorted.push(l);
}
if (!n) {
this.sorted.splice(m, 1);
}
}
function grid_onLoad(e) {
var grid = $(this).data('tGrid');
grid.toggleOrder = ReverseToggleOrder;
}
函数反向切换顺序(l){
l=typeof l==“number”?此。列[l]:l;
var n=“desc”;
如果(l.顺序=“描述”){
n=“asc”;
}否则{
如果(l.订单==“asc”){
n=零;
}
}
l、 顺序=n;
var m=$.inArray(l,this.sorted);
if(this.sortMode==“single”&&m<0){
$.each(this.sorted,function(){
this.order=null;
});
this.sorted=[];
}
if(m<0&&n){
这个。排序。推(l);
}
如果(!n){
这个.排序的.拼接(m,1);
}
}
功能网格加载(e){
var grid=$(this.data('tGrid');
grid.toggleOrder=反向toggleOrder;
}
然后,在网格的OnLoad事件处理程序中,您需要覆盖其默认行为:
.ClientEvents(events=>events.OnLoad(“grid\u OnLoad”))您可以通过覆盖grid的toggleOrder方法来实现。 首先,定义一个新的ReverseToggleOrder函数:
function ReverseToggleOrder(l) {
l = typeof l == "number" ? this.columns[l] : l;
var n = "desc";
if (l.order == "desc") {
n = "asc";
} else {
if (l.order == "asc") {
n = null;
}
}
l.order = n;
var m = $.inArray(l, this.sorted);
if (this.sortMode == "single" && m < 0) {
$.each(this.sorted, function () {
this.order = null;
});
this.sorted = [];
}
if (m < 0 && n) {
this.sorted.push(l);
}
if (!n) {
this.sorted.splice(m, 1);
}
}
function grid_onLoad(e) {
var grid = $(this).data('tGrid');
grid.toggleOrder = ReverseToggleOrder;
}
函数反向切换顺序(l){
l=typeof l==“number”?此。列[l]:l;
var n=“desc”;
如果(l.顺序=“描述”){
n=“asc”;
}否则{
如果(l.订单==“asc”){
n=零;
}
}
l、 顺序=n;
var m=$.inArray(l,this.sorted);
if(this.sortMode==“single”&&m<0){
$.each(this.sorted,function(){
this.order=null;
});
this.sorted=[];
}
if(m<0&&n){
这个。排序。推(l);
}
如果(!n){
这个.排序的.拼接(m,1);
}
}
功能网格加载(e){
var grid=$(this.data('tGrid');
grid.toggleOrder=反向toggleOrder;
}
然后,在网格的OnLoad事件处理程序中,您需要覆盖其默认行为:
.ClientEvents(events=>events.OnLoad(“grid\u OnLoad”))