jquery - 对数据表下拉过滤器进行排序

标签 jquery datatables

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

这是我的代码:

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;
});

关于jquery - 对数据表下拉过滤器进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21971035/

相关文章:

javascript - 更改 Kendo 标签条文本会动态改变样式

javascript - 当用户滚动网页时滚动 CSS 背景 - 视差?

javascript - 数组数据显示在控制台中,但是当我在 html 中打印时,它没有在 angularjs 中显示空数组

javascript - 如何禁用/抑制 jQuery 数据表的某些部分的渲染?

javascript - 从 javascript 发送 DataTables 中的 JSON 对象

javascript - 在 jQuery 中记录点击顺序?

javascript - 如果每个字符串包含 jQuery 中的特定字符,则打印每个字符串?

javascript - 将工具提示添加到数据表的特定列

jquery - 数据表引导集合

javascript - 当我单击下一个或上一个按钮时,数据表显示旧值。