easyui datagrid columns sorter 排序

var columns = [{ field: ‘月目标‘, title: ‘月目标‘, width: 60, sorter: sort_int }]

////按数字类型排序 自定义排序
function sort_int(a, b) {
//indexOf("-"):没有返回-1
//第一个数正,第二个数负
if (a.indexOf("-") == -1 && b.indexOf("-") > -1) { return 1; }
//第一个数负,第二个数正
else if (a.indexOf("-") > -1 && b.indexOf("-") == -1) { return -1; }
//两个都是负数
else if (a.indexOf("-") > -1 && b.indexOf("-") > -1) {
var c = a.split(".");
var d = b.split(".");
if (c[0].length < d[0].length) { return 1; }
else if (c[0].length > d[0].length) { return -1; }
//执行到这里,长度相等
else if (c[0] < d[0]) { return 1; }
else if (c[0] > d[0]) { return -1; }
//执行到这里小数点左边的数值相等
else {
if (a.indexOf(".") == -1 && b.indexOf(".") > -1) { return 1; }
else if (a.indexOf(".") > -1 && b.indexOf(".") == -1) { return -1; }
//都是有小数点的
else {
if (c[1] < d[1]) { return 1; }
else { return -1; }
}
}
} else {
var c = a.split(".");
var d = b.split(".");
if (c[0].length > d[0].length) { return 1; }
else if (c[0].length < d[0].length) { return -1; }
//执行到这里,长度相等
else if (c[0] > d[0]) { return 1; }
else if (c[0] < d[0]) { return -1; }
//执行到这里小数点左边的数值相等
else {
if(a.indexOf(".") > -1 && b.indexOf(".") == -1){ return 1; }
else if (a.indexOf(".") == -1 && b.indexOf(".") > -1) { return -1; }
//都是有小数点的
else {
if (c[1] > d[1]) { return 1; }
else { return -1; }
}
}
}
}

时间: 2024-10-08 17:16:32

easyui datagrid columns sorter 排序的相关文章

easyui datagrid columns的field支持属性的子属性(field.sonfield形式或者格式化程序形式)

所谓为了支持某属性的子属性,主要为了解决.在服务器返回的json格式的数据的某个属性带有自属性,而我们恰恰又需要使用到该子属性作为我们的datagrid的某个字段的.默认情况下datagrid只能支持一级属性字段(属性的属性字段属于二级字段). 对于这个问题的解决方案有两种方式 1.就是更改esayui源文件,使其支持field.sonfield的形式. javascript语法为我们提供了两种方式获取一个对象的属性:点字符连接和[]方式.使用[]可以很方便的将一个属性通过字符串的方式获取.但是

springmvc+easyui datagrid columns的field支持属性的子属性(field.sonfield形式或者格式化程序形式)

所谓为了支持某属性的子属性,主要为了解决:在服务器返回的json格式的数据的某个属性带有子属性,而我们恰恰又需要使用到该子属性作为我们的datagrid的某个字段的.默认情况下datagrid只能支持一级属性字段(属性的属性字段属于二级字段). 对于这个问题的解决方案有两种方式: 1.就是更改esayui源文件,使其支持field.sonfield的形式. javascript语法为我们提供了两种方式获取一个对象的属性:点字符连接和[]方式.使用[]可以很方便的将一个属性通过字符串的方式获取.但

easyui datagrid sort 表头 排序

datagrid的点击列表头刷新,分为两种,一种是页面刷新,不涉及后台服务器数据,不会从新查询数据库,只会刷新当前页数据: 一种是服务器级刷新,会重新加载全部数据. 如果不需要自定义排序,可以直接使用 remoteSort:false,      sortName:'',      sortOrder:'asc', 一些特殊排序,或者特殊字段可以使用以下的方法 1.将服务器对数据项排序设置为false(必须) 2.设置field的排序属性为true,sorter的function内容自己写,如果

easyui datagrid columns 如何取得json 内嵌对象(many-to-one POJO class)

http://www.iteye.com/problems/44119 http://hi.baidu.com/lapson_85/item/7733586e60b08500a1cf0f8d ———————————————————————————————————————————————————————————————————————————————————————— 1. json的数据格式: var map = {"uname":'',"upwd":'',&quo

EasyUI datagrid columns 中 field 区分大小写

columns: [ [ {field: 'id', title: 'ID'}, {field: 'name', title: 'NAME'}, {field: 'DT_CRT_TM', title: 'CRTTM'} ] ] 原文地址:https://www.cnblogs.com/hfultrastrong/p/9821672.html

easyui datagrid 客户端搜索、分页、排序

easyui datagrid的排序默认是服务器端排序,可以用sorter实现客户端排序[2]:客户端分页可用filter实现[3]:客户端搜索同样可以用filter实现. 不多说直接上代码: <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <meta name="keywords" con

easyui datagrid checkbox multiple columns have been done do

lengku1987 2013-01-06 22:27:47 Sponsored Links easyui datagrid checkbox multiple columns have been done do? it is not possible to do ah. Sponsored Links xuan0751 2013-01-06 23:07:28 multiple columns with checkbox? jerryflex 2013-01-06 23:28:34 ah how

【Easyui】Easyui Datagrid 排序

前端配置方法 方法一,HTML中添加sortable:true属性 <th data-options="field:'AMOUNT_OA',width:60,align:'right', sortable:true">总金额</th> 方法二,JS中添加sortable:true属性 [{ field: 'AS_CON_STATUS', title: '合同状态', width: 60, sortable:true }, { field: 'WFNODENAME

easyui datagrid 动态拼接columns以及赋值

需求背景如下: 后台java代码动态拼接datagrid的columns,然后赋值,实现过程如下: 后台java代码拼接过程,只是举个例子,可以根据具体业务拼接: java代码: Map<String, Object> map = new HashMap<String,Object>(); StringBuffer cols = new StringBuffer(); cols.append("[["); cols.append("{field:\&q