【问题标题】:Datatables column filter checkbox not working with Ajax数据表列过滤器复选框不适用于 Ajax
【发布时间】:2015-07-23 10:41:07
【问题描述】:

当使用 ajax 绑定数据表时,我的数据表列过滤器复选框消失。这是我的代码

$('#Table1').dataTable({
    "ajaxSource": "js/Group.JSON"
}).columnFilter({
    sPlaceHolder: "head:after",
    aoColumns: [
         { type: "checkbox", values: null },
         { type: "checkbox", values: null },
         { type: "checkbox", values: null },
         { type: "checkbox", values: null },
         { type: "checkbox", values: null },
         { type: "checkbox", values: null }
    ]
});

【问题讨论】:

标签: jquery ajax datatables


【解决方案1】:

不知道发生了什么——我们所知道的只是关于“当我从 ajax 获取数据时它不起作用”的评论——因此假设其他一切都很好,没有消息是好消息等;并注意到 ColumnFilter 是一个为 dataTables 1.9.x 构建的旧错误插件,有 +100 个未解决的问题,最后一次修复是在将近 1.5 年前 - 那么我会说这是一个简单的 javascript 异步问题。

使用链接时

$('#Table1').dataTable({
    //some ajax stuff
}).columnFilter({ .. })

然后columnFilter({ .. }) 被执行立即,它不会等到AJAX 完成其业务。结果是在columnFilter 初始化时没有加载数据。为防止这种情况,请在回调中初始化 columnFilter

$('#Table1').dataTable({
    fnInitComplete : function() {
        this.columnFilter({
           sPlaceHolder: "head:after",
           ...
        })      
    }
})

【讨论】:

  • 太棒了!!这是工作!!非常感谢大卫康拉德 :)
  • 我对 updatepanel(asp.net) 有同样的问题,我将数据表网格放在 updatepanel 中,一切正常,但是当 updatepanel 调用复选框列过滤器消失时,我应用了您编辑的代码但没有运气
  • 我在以下链接stackoverflow.com/questions/31587656/…上提出了上述问题
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-11-03
  • 2021-09-01
  • 2013-09-16
  • 2012-10-17
  • 2015-08-05
  • 1970-01-01
相关资源
最近更新 更多