chr*_*ris 1 sorting datatable jquery
在这里我的代码
jQuery.fn.dataTableExt.oSort['num-asc'] = function(a,b) {
var x = a.replace( /<.*?>/g, "" );
var y = b.replace( /<.*?>/g, "" );
x = parseFloat( x );
y = parseFloat( y );
return ((x < y) ? -1 : ((x > y) ? 1 : 0));
};
jQuery.fn.dataTableExt.oSort['num-desc'] = function(a,b) {
var x = a.replace( /<.*?>/g, "" );
var y = b.replace( /<.*?>/g, "" );
x = parseFloat( x );
y = parseFloat( y );
return ((x < y) ? 1 : ((x > y) ? -1 : 0));
};
$(document).ready(function() {
$('#ledger').dataTable({
bAutoWidth: false,
bJQueryUI : true,
bProcessing: true,
bServerSide: false,
sPaginationType: "full_numbers",
bStateSave : false,
bUseRendered: false,
iDisplayLength: ${entriesValue},
sDom: mw.superadmin.datatable.relatedListDom,
aLengthMenu: mw.superadmin.datatable.relatedListLengthMenu,
aaSorting: [[0,'asc']],
aoColumns: [
null,
{ "iDataSort": 2},
{ "bVisible": false, "sType": "num"},
{ "iDataSort": 4, "bSortable": true },
{ "bVisible": false, "sType": "num"}
]
});
Run Code Online (Sandbox Code Playgroud)
这个表在IE,FF,Opera和Safari上100%完全无问题地工作到我的知识但是对于Chrome它不能错误地使用,但只能在我的可排序集的1个特定列上.我无法弄明白,需要一点帮助.
可以在下图中找到它在Chrome上执行操作的示例.

我个人认为它的原因是它有像(,[})等字符.但是就像我说其他浏览器不是问题一样,Chrome是唯一一个给我一个问题的人.
我有同样的问题,Chrome中的数据表无法对九个中的一列进行排序.然而它在Firefox中完美运行.
为了让Chrome的工作,我必须明确指定S型的所有列.
在我的情况下,"html"运行良好.
$('#xxx').dataTable({
"bJQueryUI": true,
"bSort": true,
"aoColumns": [
{"sType": "html"},
{"sType": "html"},
{"sType": "html"}
]
});
Run Code Online (Sandbox Code Playgroud)
我想在某种程度上Chrome的列类型自动检测失败了.
| 归档时间: |
|
| 查看次数: |
2350 次 |
| 最近记录: |