您的位置:首页 > Web前端 > JQuery

jquery table 插件排序

2015-12-27 21:58 801 查看
http://cdn.datatables.net/plug-ins/1.10.10/sorting/

这是所有排序插件
http://datatables.net/plug-ins/sorting/
这是用法

IP地址的改良了一下

* @example

* $('#example').dataTable( {

* columnDefs: [

{ orderable:false,//禁用排序

targets:[0] //指定的列

},

* { type: 'ip-address', targets: 0 }

* ],

"order": [[ 1, "asc" ]], 默认排序

* } );

*/

jQuery.extend( jQuery.fn.dataTableExt.oSort, {

"ip-address-pre": function ( a ) {

a = a.match(/\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}/)[0];

var i, item;

var m = a.split("."),

n = a.split(":"),

x = "",

xa = "";

if (m.length == 4) {

// IPV4

for(i = 0; i < m.length; i++) {

item = m[i];

if(item.length == 1) {

x += "00" + item;

}

else if(item.length == 2) {

x += "0" + item;

}

else {

x += item;

}

}

}

else if (n.length > 0) {

// IPV6

var count = 0;

for(i = 0; i < n.length; i++) {

item = n[i];

if (i > 0) {

xa += ":";

}

if(item.length === 0) {

count += 0;

}

else if(item.length == 1) {

xa += "000" + item;

count += 4;

}

else if(item.length == 2) {

xa += "00" + item;

count += 4;

}

else if(item.length == 3) {

xa += "0" + item;

count += 4;

}

else {

xa += item;

count += 4;

}

}

// Padding the ::

n = xa.split(":");

var paddDone = 0;

for (i = 0; i < n.length; i++) {

item = n[i];

if (item.length === 0 && paddDone === 0) {

for (var padding = 0 ; padding < (32-count) ; padding++) {

x += "0";

paddDone = 1;

}

}

else {

x += item;

}

}

}

return x;

},

"ip-address-asc": function ( a, b ) {

return ((a < b) ? -1 : ((a > b) ? 1 : 0));

},

"ip-address-desc": function ( a, b ) {

return ((a < b) ? 1 : ((a > b) ? -1 : 0));

}

});
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: