table 转化成grid,及其字符串排序

<table id="listTable" ></table>


$('#listTable').datagrid({
nowrap: false,
striped: true,
remoteSort:false,
fit:true,
url:'zyryJbxxAction!list.ces?tt='+getRandomId(),
queryParams:{'dqzt':'SY,ZY,CJ'},
idField:'id',
mode:"remote",
frozenColumns:[[
            {field:'id',checkbox:true},
            {field:'gljb',hidden:true},
            {field:'ay',hidden:true},
{field:'sylb',title:'收押类别',width:80,sortable:true,align:'center'},//,formatter:formatSYLB
{field:'fh',title:'番号',width:80,sortable:true,align:'center',styler:styleFh},
{field:'xm',title:'姓名',width:80,sortable:true,align:'center'},
{field:'xb',title:'性别',width:70,sortable:true,align:'center'},//,formatter:formatXB
{field:'csrq',title:'出生日期',width:100,sortable:true,align:'center',formatter:dateFormatter}
]],
columns:[[
{field:'bajg',title:'办案机关',width:180,sortable:true,align:'center'},//,formatter:formatBAJG
{field:'rssj',title:'入所时间',width:150,sortable:true,align:'center'},
{field:'ssjd',title:'诉讼阶段',width:120,sortable:true,align:'center'},//,formatter:formatSSJD
{field:'jyqx',title:'羁押期限',width:100,sortable:true,align:'center',formatter:dateFormatter},
{field:'jfh',title:'监房号',width:80,sortable:true,align:'center',sorter:mysort},
{field:'dqzt',title:'当前状态',width:80,sortable:true,align:'center'}//,formatter:formatDQZT
]],
rownumbers:true,
pagination:true
});
//自定义排序,免除字符串排序无效果
function mysort(a,b){

if(a.length > b.length)
  return 1;   
  else if(a.length < b.length)
  return -1;   
  else if(a > b) return 1;   
  else return -1;

}

=======================以下除了上面的部分都是分页中的操作==================

$(function(){
$('#listTable').datagrid({
nowrap: false,
striped: true,
remoteSort:false,
fit:true,
url:'zyryJbxxAction!list.ces?tt='+getRandomId(),
queryParams:{'dqzt':'SY,ZY,CJ'},
idField:'id',
mode:"remote",
frozenColumns:[[
            {field:'id',checkbox:true},
            {field:'gljb',hidden:true},
            {field:'ay',hidden:true},
{field:'sylb',title:'收押类别',width:80,sortable:true,align:'center'},//,formatter:formatSYLB
{field:'fh',title:'番号',width:80,sortable:true,align:'center',styler:styleFh},
{field:'xm',title:'姓名',width:80,sortable:true,align:'center'},
{field:'xb',title:'性别',width:70,sortable:true,align:'center'},//,formatter:formatXB
{field:'csrq',title:'出生日期',width:100,sortable:true,align:'center',formatter:dateFormatter}
]],
columns:[[
{field:'bajg',title:'办案机关',width:180,sortable:true,align:'center'},//,formatter:formatBAJG
{field:'rssj',title:'入所时间',width:150,sortable:true,align:'center'},
{field:'ssjd',title:'诉讼阶段',width:120,sortable:true,align:'center'},//,formatter:formatSSJD
{field:'jyqx',title:'羁押期限',width:100,sortable:true,align:'center',formatter:dateFormatter},
{field:'jfh',title:'监房号',width:80,sortable:true,align:'center',sorter:mysort},
{field:'dqzt',title:'当前状态',width:80,sortable:true,align:'center'}//,formatter:formatDQZT
]],
rownumbers:true,
pagination:true
});
function mysort(a,b){

if(a.length > b.length)
  return 1;   
  else if(a.length < b.length)
  return -1;   
  else if(a > b) return 1;   
  else return -1;

}            
/*
收押类别 番号 姓名 性别 出生日期 收押性质 办案机关 入所时间 诉讼阶段 羁押期限 监房号 当前状态
*/
var p = $('#listTable').datagrid('getPager');
if (p){
$(p).pagination({
buttons:[
<systemsdk:res resKey="shjkss.gjgz.zyry.add">
         {
text:'新增',
iconCls:'icon-add',
handler:function(){

openNext();

// window.location='edit.jsp';
// window.event.returnValue=false;
}
},
</systemsdk:res>
<systemsdk:res resKey="shjkss.gjgz.zyry.edit">
{
text:'修改',
iconCls:'icon-edit',
handler:function(){
var selectedArray = $('#listTable').datagrid('getSelections');
if(selectedArray.length != 1){
$.messager.alert('提示','请选择一条记录!','warning');
}else{
//此处分开管教看守业务,正式上线后还原为edit.jsp
//window.location='add.jsp?id='+getSelected('listTable','id')+'&ay='+getSelected('listTable','ay');
window.location='edit.jsp?id='+getSelected('listTable','id')+'&ay='+getSelected('listTable','ay');
window.event.returnValue=false;
}
}
},
</systemsdk:res>
<systemsdk:res resKey="shjkss.gjgz.zyry.delete">
{
text:'删除',
iconCls:'icon-remove',
handler:function(){
var selectedArray = $('#listTable').datagrid('getSelections');
if(selectedArray.length == 0){
$.messager.alert('提示','请选择记录!','warning');
}else{
$.messager.confirm('提示', '确定要删除记录吗?', function(r){
if (r){
$.ajax({ 
                        url:'zyryJbxxAction!delete.ces?idArray='+getSelections('listTable','id')+'&tt='+getRandomId(),
                        success:function(data){
                        if(data=='success'){
                    $.messager.alert('提示','删除成功!','info');
                    reload();
                        }else{
                        $.messager.alert('提示','删除失败!','error');
                        }
                        }
                    });
                    }
                 });
                   }
}
},
</systemsdk:res>
<systemsdk:res resKey="shjkss.gjgz.zyry.view">
{
text:'查看',
iconCls:'icon-view',
handler:function(){
var selectedArray = $('#listTable').datagrid('getSelections');
if(selectedArray.length != 1){
$.messager.alert('提示','请选择一条记录!','warning');
}else{
window.location='view.jsp?id='+getSelected('listTable','id');
window.event.returnValue=false;
//openDialog('在押人员详细信息查看','view.jsp?id='+getSelected('listTable','id'));
}
}
},
</systemsdk:res>
/*{
text:'查看概要',
iconCls:'icon-view',
handler:function(){
var selectedArray = $('#listTable').datagrid('getSelections');
if(selectedArray.length != 1){
$.messager.alert('提示','请选择一条记录!','warning');
}else{
openDialog('在押人员概要信息查看','basicView.jsp?id='+getSelected('listTable','id'));
}
}
},*/
<systemsdk:res resKey="shjkss.gjgz.zyry.print">
{
text:'打印',
iconCls:'icon-print',
handler:function(){
$.post('zyryJbxxAction!listCount.ces?tt='+getRandomId(),null,function(data){
if(data>100){
$.messager.confirm('提示', '已超过100记录,是否继续打印?', function(r){
if(r){
listPrint();
}
});
}else{
listPrint();
}
});
}
},
</systemsdk:res>
'-']
});
}

$('#dqzt').combobox({
editable:false,
width:120,
multiple:true,
noempty:false,
panelHeight:'auto',
valueField:'val',
textField:'text',
url:"${ctx}/codeAction!getCode4ComboboxJson.ces?groupKey=<%=ShjkssConst.CODE_GROUP_KEY_GYZT%>&tt="+getRandomId(),
mode:'remote'
});

});

========================对文字排序==================

function mysort(a,b){
var a1;
var b1;

if(a=='在用')
a1=1;
if(a=='储备')
a1=2;
if(a=='撤销')
a1=3;
if(b=='在用')
b1=1;
if(b=='储备')
b1=2;
if(b=='撤销')
b1=3;

if(a1.length > b1.length)
  return 1;   
  else if(a1.length < b1.length)
  return -1;   
  else if(a1 > b1) return 1;   
  else return -1;

}

================后台的排序,这个排序时机更早=============
if (list != null && list.size() > 0) {
Collections.sort(list, new Comparator() {
public int compare(Object o1, Object o2) {
TBGjgzEmjbxxDj a1 = (TBGjgzEmjbxxDj) o1;
TBGjgzEmjbxxDj a2 = (TBGjgzEmjbxxDj) o2;
String zt1 = a1.getZt();
String zt2 = a2.getZt();
int v1 = 0;
int v2 = 0;
if ("ZY".equals(zt1)) v1 = 100;
if ("ZY".equals(zt2)) v2 = 100;
if ("CB".equals(zt1)) v1 = 10;
if ("CB".equals(zt2)) v2 = 10;
if ("CX".equals(zt1)) v1 = 1;
if ("CX".equals(zt2)) v2 = 1;
return v2 - v1;
}
});

猜你喜欢

转载自yuhuiblog6338999322098842.iteye.com/blog/2180080