【问题标题】:Datatables Filter dropmenu数据表过滤器下拉菜单
【发布时间】:2018-02-27 01:28:44
【问题描述】:

我想使用此行 data: ["Accepted", "Delivered", "Pending", "Cancel"], filter_default_label: "Select Status" 过滤数据表,但将要过滤的数据已经在下拉菜单中 [在此处输入图像描述][1] 就像在图像中的此处,下拉菜单显示待处理,所以如果有是不是像取消这样的词,我想过滤表中所有显示未决的行,而不是在表中取消

【问题讨论】:

  • 如果您选择取消,您是说您仍然需要显示待处理而不是取消?
  • 如果我有一些行显示待处理,其他显示取消和其他显示已接受,当我过滤时我只想显示取消的行而不是其他行
  • @HusseinZaki 您想根据不同行的下拉列表中的选定值过滤某个列吗?使用自定义过滤器(具有自定义过滤功能)可能可以做到这一点,请提供一个 jsfiddle 测试页面,以便可以调试...
  • @Daniel codepen.io/HusseinZaki/pen/oEJNEM 这是codepen中的代码

标签: javascript jquery datatable datatables yadcf


【解决方案1】:

所以基本上你的专栏应该使用custom_func,请参阅下面的完整专栏设置:

{    
    column_number : 2, 
    data: ["Accepted", "Delivered", "Pending", "Cancel"], filter_default_label: "Select Status", 
    filter_type: 'custom_func', 
    custom_func: myCustomFilterFunction
},

myCustomFilterFunction 应该如下所示:

 function myCustomFilterFunction(filterVal, columnVal) {
        var found;
        if (columnVal === '') {
            return true;
        }
        if ($(columnVal).val() === filterVal) {
            return true;
        }
        return false;
 }

但为了使其正常工作,您必须在每次更改后更新每个选择(其 html/datatbles 数据)应在每次更改后更新 - 否则旧值将保持在表中的选定状态,并且 yadcf 将无法告诉它的更新值

see following test page

【讨论】:

  • 现在检查,尝试过滤 accepted 值,你会看到两行,在这个例子中,我在表格 html 中设置了 selected 而在 *real life8 你将拥有在每次选择更改后添加更新数据表模型 / html 的代码,以便 yadcf 过滤器知道更新的数据
  • 这就是我想要做的,我想当我在表格中更改以取消而不返回 html 并添加选定的做同样的工作,你能帮我吗
  • 不确定您的意思,但您可以过滤表中的数据是否未同步/更新
  • @Dainel 能否在每次选择更改后添加更新数据表模型/html 的代码,以便 yadcf 过滤器知道更新的数据
  • @Dainel 我的意思是我想知道我什么时候在表格中而不在表格 html 中添加选择点击选项时假设它是取消它将添加选择它所以当我过滤取消值时我只会说取消,你能帮我吗
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-11
  • 2012-12-05
  • 2018-08-04
  • 1970-01-01
相关资源
最近更新 更多