【问题标题】:Table Sorting with Javascript使用 Javascript 进行表格排序
【发布时间】:2015-01-01 04:41:21
【问题描述】:

我正在处理一个带有过滤功能的表,我可以将它变成某种功能,但是当我将它弹回 DW 并测试页面时,它会失去功能。我已尝试使用页面上的脚本并将其插入页面,但我不知道下一步该转向何处,因此将不胜感激。我意识到它不完整并且所有复选框都没有正确设置,但我真的想知道(此时)是为什么我在 Dreamweaver 中失去了功能 - 当我通过 Dreamweaver 在浏览器中进行测试时更正,我还上传了一个测试服务器,但仍然没有功能。

fiddle

$("input[name='filterStatus'], select.filter").change(function () {
    var classes = [];
    var stateClass = ""

    $("input[name='filterStatus']").each(function() {
        if ($(this).is(":checked")) {
            classes.push('.'+$(this).val());
        }
    });

    $("select.filter").each(function() {
        if ($(this).val() != 'ZZ') {
            stateClass += "." + $(this).val();
        }
    });

    if (classes == "" && stateClass == "") {
        // if no filters selected, show all items
        $("#StatusTable tbody tr").show();
    } else {
        // otherwise, hide everything...
        $("#StatusTable tbody tr").hide();

        // then show only the matching items
        rows = $("#StatusTable tr" + stateClass).filter(classes.length ? classes.join(',') : '*');
        if (rows.size() > 0) {
            rows.show();
        }
    }

【问题讨论】:

  • 引用荷马辛波森的话:“别人不能做到吗?” tablesorter.com/docs.
  • 也不要在 Dreamweaver 中测试,它不是浏览器,而是在浏览器中测试。自从我使用 Dreamweaver 已经很久了,它甚至可以在预览版中运行 javascript 吗?
  • 我强烈建议不要通过将其与空字符串 (classes == "") 进行比较来检查您的类数组是否为空。我认为classes.length === 0 是您要找的。​​span>
  • 我在多个浏览器中进行测试,我只是不明白为什么我的脚本有时会在小提琴中运行,然后在浏览器中根本没有。
  • 我也试过 tablsorter.js 但我需要复选框

标签: javascript html html-table filtering


【解决方案1】:

我相信 JTable 会解决您的问题。

您需要以给定示例的格式传递数据,它将允许过滤、搜索和分页数据。

http://jtable.org/GettingStarted

【讨论】:

  • 我查看了 JTable 唯一的问题是我需要使用复选框来过滤和关闭 html 表。由于客户端限制,我无法使用数据库。我有一个按复选框排序的表格,但需要根据匹配的复选框条件过滤结果。
  • 对于基于复选框的过滤器,我相信您需要编写自定义代码
猜你喜欢
  • 2012-12-25
  • 2021-08-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多