Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
jQuery Datatable排序错误/错误Chrome特定需要解决的问题_Jquery_Sorting_Datatable - Fatal编程技术网

jQuery Datatable排序错误/错误Chrome特定需要解决的问题

jQuery Datatable排序错误/错误Chrome特定需要解决的问题,jquery,sorting,datatable,Jquery,Sorting,Datatable,这是我的密码 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) ?

这是我的密码

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"}
        ]
    });
jQuery.fn.dataTableExt.oSort['num-asc']=函数(a,b){
var x=a.replace(//g,“”);
变量y=b.replace(//g,“”);
x=parseFloat(x);
y=浮动(y);
回报率((xy)?1:0);
};
jQuery.fn.dataTableExt.oSort['num-desc']=函数(a,b){
var x=a.replace(//g,“”);
变量y=b.replace(//g,“”);
x=parseFloat(x);
y=浮动(y);
回报率((xy)?-1:0);
};
$(文档).ready(函数(){
$(“#分类账”)。数据表({
鲍托维兹:错,
bJQueryUI:是的,
b处理:对,
bServerSide:false,
sPaginationType:“完整编号”,
bStateSave:false,
B:错,
iDisplayLength:${entriesValue},
sDom:mw.superadmin.datatable.relatedListDom,
aLengthMenu:mw.superadmin.datatable.relatedListLength菜单,
A排序:[[0,'asc']],
AO列:[
无效的
{“iDataSort”:2},
{“bVisible”:false,“sType”:“num”},
{“iDataSort”:4,“bSortable”:true},
{“bVisible”:false,“sType”:“num”}
]
});
据我所知,这张表在IE、FF、Opera和Safari上100%正常工作,但在Chrome上它失败了,但只在我的可排序集的一个特定列上。我想不出来,需要一些帮助

下图显示了它在Chrome上的作用。


就我个人而言,我觉得它的原因是它包含了(,[})等字符。然而,正如我所说的,其他浏览器没有问题,Chrome是唯一一个在这方面给我带来问题的浏览器。

我也遇到了同样的问题,Chrome中的datatable无法在九个列中的一个列上排序。但是它在Firefox中工作得非常好

为了让它在Chrome中工作,我必须显式地为all列指定

在我的例子中,“html”工作得很好

$('#xxx').dataTable({
    "bJQueryUI": true,
    "bSort": true,
    "aoColumns": [
        {"sType": "html"},
        {"sType": "html"},
        {"sType": "html"}
     ]
}); 

我猜Chrome中自动检测列类型的功能有点失败。

我也遇到了同样的问题,Chrome中的datatable无法在九个列中的一个列上排序。但是它在Firefox中工作得非常好

为了让它在Chrome中工作,我必须显式地为all列指定

在我的例子中,“html”工作得很好

$('#xxx').dataTable({
    "bJQueryUI": true,
    "bSort": true,
    "aoColumns": [
        {"sType": "html"},
        {"sType": "html"},
        {"sType": "html"}
     ]
}); 

我猜Chrome中自动检测列类型的功能不知怎的失败了。

我必须试一试。我仍然有问题。通过与开发人员的讨论和四处搜索,我发现这是Chrome特有的错误,加上数据表的开发方式。简言之,Chrome从未处理过数据类型稍微不同的是,在排序过程中,它在翻译过程中丢失了。它将HTML和字符串合并为一个字符串,因为HTML在字符串中,所以排序取决于您在所述字符串中的HTML,在我的例子中,与其他内容的隐藏参数链接。@chris有趣的是,我的问题专栏是纯文本。这对我和不起作用的列是纯文本。奇怪的是,其他列起作用了。我喜欢堆栈溢出。有同样的问题,但使用
mRender
覆盖显示,发现您可以将
if(type==='display'){…}
更改为
if(type=='display'| type=='type'){…}
这使它也能工作。我必须试一试。我仍然有问题。通过与开发人员的讨论和四处搜索,我发现这是一个Chrome特有的错误,加上datatables的开发方式。简而言之,Chrome处理的数据类型和排序略有不同它在翻译过程中丢失。它将HTML和字符串组合为一个字符串,因为HTML在字符串中,所以排序取决于所述字符串中的HTML,在我的例子中,链接与其他内容的隐藏参数。@chris有趣的是,我的问题列是纯文本。这对我有效,而不起作用的列是纯文本。奇怪的是,其他列也起作用了。我喜欢堆栈溢出。也有同样的问题,但使用
mRender
覆盖显示,发现您可以将
if(type=='display'){…}
更改为
if(type=='display'.\124; type=='type'){…}
,这使得它也可以工作。