我有一个数据表,已经在其中创建了下拉列表以过滤行。
我的问题是下拉列表中的值本身未排序...

这是我的代码:

this.innerHTML = fnCreateSelect(oTable.fnGetColumnData(i), $("#" + i).val());
$('select', this).change(function () {
    var searchVal = $(this).val().replace(/\&/g, '&');
    if (searchVal != '') {
        searchVal = '^' + searchVal + '$';
    }
    oTable.fnFilter(searchVal, i, true, false);
});


谢谢!

最佳答案

好了,找到答案了:

所有需要做的就是编写oTable.fnGetColumnData(i).sort()而不是oTable.fnGetColumnData(i)
然后,我还希望排序不区分大小写,因此我再次将其更改为:

oTable.fnGetColumnData(i).sort(function(a, b) {
    if (a.toLowerCase() < b.toLowerCase()) return -1;
    if (a.toLowerCase() > b.toLowerCase()) return 1;
    return 0;
});

09-27 03:47