Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/77.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
Javascript jquery Datatables降序排序不使用";订单“;选项_Javascript_Jquery_Html_Sorting_Datatables - Fatal编程技术网

Javascript jquery Datatables降序排序不使用";订单“;选项

Javascript jquery Datatables降序排序不使用";订单“;选项,javascript,jquery,html,sorting,datatables,Javascript,Jquery,Html,Sorting,Datatables,我试图对jQuery数据表(如下)进行排序,但无法获取要按降序排序的第一列。我尝试了“订单”:[[0,'desc']],但它不起作用 提交日期根据您的JSFIDLE,您希望使用d M Y格式对输出日期的第一列进行排序,以便将日期(英国2017年1月1日)表示为2016年1月1日?DataTables无法理解这种格式,因此您需要添加如下排序方法: jQuery.extend(jQuery.fn.dataTableExt.oSort, { "dateNonStandard-asc": func

我试图对jQuery数据表(如下)进行排序,但无法获取要按降序排序的第一列。我尝试了
“订单”:[[0,'desc']]
,但它不起作用



提交日期根据您的JSFIDLE,您希望使用
d M Y
格式对输出日期的第一列进行排序,以便将日期(英国2017年1月1日)表示为
2016年1月1日
?DataTables无法理解这种格式,因此您需要添加如下排序方法:

jQuery.extend(jQuery.fn.dataTableExt.oSort, {
  "dateNonStandard-asc": function (a, b) {
    var x = parseInt(moment(a, "DD MMM YYYY").format("X"), 10);
    var y = parseInt(moment(b, "DD MMM YYYY").format("X"), 10);
    return (x == y) ? 0 : (x < y) ? 1 : -1;
  },
  "dateNonStandard-desc": function (a, b) {
    var x = parseInt(moment(a, "DD MMM YYYY").format("X"), 10)
    var y = parseInt(moment(b, "DD MMM YYYY").format("X"), 10);
    return (x == y) ? 0 : (x < y) ? -1 : 1;
  }
});
jQuery.extend(jQuery.fn.dataTableExt.oSort{
“日期非标准asc”:函数(a,b){
var x=parseInt(矩(a,“DD-MMM-YYYY”)。格式(“x”),10;
变量y=parseInt(矩(b,“DD-MMM-YYYY”)。格式(“X”),10;
返回(x==y)?0:(x

这是一份工作,我希望能有所帮助。

您的JSFIDLE没有显示任何内容。如果您可以使用它来显示一些数据,这些数据将有助于更好地说明您的问题。@烦扰鼠标,对不起,我的不好。我现在也复制了HTML部分。:-)您可能已经复制了,但是链接仍然显示相同的代码…@HappingMouse,真的很抱歉!现在看看它(我想起了Ali G indahouse的一段引文),由于某种原因,JSFIDLE已经消失了,但是你得到了我希望的想法。
jQuery.extend(jQuery.fn.dataTableExt.oSort, {
  "dateNonStandard-asc": function (a, b) {
    var x = parseInt(moment(a, "DD MMM YYYY").format("X"), 10);
    var y = parseInt(moment(b, "DD MMM YYYY").format("X"), 10);
    return (x == y) ? 0 : (x < y) ? 1 : -1;
  },
  "dateNonStandard-desc": function (a, b) {
    var x = parseInt(moment(a, "DD MMM YYYY").format("X"), 10)
    var y = parseInt(moment(b, "DD MMM YYYY").format("X"), 10);
    return (x == y) ? 0 : (x < y) ? -1 : 1;
  }
});