首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何禁用DataTables/TableTools按钮

如何禁用DataTables/TableTools按钮
EN

Stack Overflow用户
提问于 2014-05-21 11:58:18
回答 1查看 4.1K关注 0票数 5

我使用的是DataTable 1.10和TableTools 2.2.1。

考虑到下面的片段,我想禁用/启用编辑按钮。

代码语言:javascript
复制
var myTable = $("#myTable ").DataTable({
tableTools : {
    "aButtons" : [ {
        "sExtends" : "text",
        "sButtonText" : "Edit",
        "fnClick" : function(nButton, oConfig, oFlash) {
            /* some stuff */    
        }
    }]
  }
})

是否有可能在运行时执行此操作?

非常感谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-05-21 13:35:17

这是个好问题!似乎fnClick

代码语言:javascript
复制
dataTable.tabletools().fnSettings().buttonSet[id].fnClick 

只有对存储在其他地方的事件的引用才是不可访问的(更改API上的fnClick没有任何影响)。但是,您可以使用预定义的类DTTT_disabled,并在fnClick-handler中检查它:

代码语言:javascript
复制
var dataTable = $("#example").DataTable({
   sDom: 'TC',
   oTableTools : {
       aButtons : [{
            sExtends : "text",
            sButtonText : "Edit",
            fnClick :  function(nButton, oConfig, oFlash) {
                 if ($(nButton).hasClass('DTTT_disabled')) return;
                 alert('edit button clicked');
            }
       }]  
  }
});

使用启用或禁用按钮的复选框的示例:

代码语言:javascript
复制
$("#enable").click(function() {
    if ($(this).is(':checked')) {
        $('.DTTT_button_text').removeClass('DTTT_disabled');
    } else {
        $('.DTTT_button_text').addClass('DTTT_disabled');
    }
});

参见演示-> http://jsfiddle.net/ev2N2/

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23782527

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档