我使用的是DataTable 1.10和TableTools 2.2.1。
考虑到下面的片段,我想禁用/启用编辑按钮。
var myTable = $("#myTable ").DataTable({
tableTools : {
"aButtons" : [ {
"sExtends" : "text",
"sButtonText" : "Edit",
"fnClick" : function(nButton, oConfig, oFlash) {
/* some stuff */
}
}]
}
})是否有可能在运行时执行此操作?
非常感谢
发布于 2014-05-21 13:35:17
这是个好问题!似乎fnClick在
dataTable.tabletools().fnSettings().buttonSet[id].fnClick 只有对存储在其他地方的事件的引用才是不可访问的(更改API上的fnClick没有任何影响)。但是,您可以使用预定义的类DTTT_disabled,并在fnClick-handler中检查它:
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');
}
}]
}
});使用启用或禁用按钮的复选框的示例:
$("#enable").click(function() {
if ($(this).is(':checked')) {
$('.DTTT_button_text').removeClass('DTTT_disabled');
} else {
$('.DTTT_button_text').addClass('DTTT_disabled');
}
});参见演示-> http://jsfiddle.net/ev2N2/
https://stackoverflow.com/questions/23782527
复制相似问题