Handsontable日期列排序

时间:2015-11-03 11:49:45

标签: javascript jquery momentjs handsontable

我想要对日期列进行排序。我正在使用Moment.js将database-dateformat设置为德语语言环境dateformat。

这是我的代码:

var myData = [
    {'date':moment('2012-12-01').locale('de').format('L'), 'Text':'abc'},
    {'date':moment('2015-09-12').locale('de').format('L'), 'Text':'def'},
    {'date':moment('2015-01-31').locale('de').format('L'), 'Text':'ghi'},
    ],
    container = document.querySelector('#exampleGrid');

var hot = new Handsontable(container, {
    data: myData,
    //cols
    colHeaders: ['Datum','Text'],
    columns: [
        {data:'date', type:'date', dateFormat:'DD.MM.YYYY', correctFormat:true},
        {data:'Text'}
        ],
    columnSorting: true,
    sortIndicator: true
});

您是否知道为什么它在fiddle中不起作用?

1 个答案:

答案 0 :(得分:0)

替代JS电子表格,使这更容易。

<html>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>

<script src="http://cdn.bossanova.uk/js/jquery.jexcel.js"></script>
<script src="http://cdn.bossanova.uk/js/jquery.jcalendar.js"></script>
<link rel="stylesheet" href="http://cdn.bossanova.uk/css/jquery.jexcel.css" type="text/css" />
<link rel="stylesheet" href="http://cdn.bossanova.uk/css/jquery.jcalendar.css" type="text/css" />

<div id="my"></div>

<script>
data = [
    ['Mazda', 2001, 2000, '2006-01-01'],
    ['Pegeout', 2010, 5000, '2005-01-01'],
    ['Honda Fit', 2009, 3000, '2004-01-01'],
    ['Honda CRV', 2010, 6000, '2003-01-01'],
];

$('#my').jexcel({
    data:data,
    colHeaders: ['Model', 'Date', 'Price', 'Date'],
    colWidths: [ 300, 80, 100, 100 ],
    columns: [
        { type: 'text' },
        { type: 'numeric' },
        { type: 'numeric' },
        { type: 'calendar', options: { format:'DD/MM/YYYY' } },
    ]
});
</script>
</html>

http://www.bossanova.uk/jexcel/using-a-calendar-column-type