javascript - 在数据表列中设置复选框的样式

标签 javascript jquery checkbox datatables switchery


我有一个来自 ajax 源的数据表。我想根据其值在一列中显示一个复选框。

如果该值为事件,则复选框应选中,否则保持未选中

我正在使用 Switchery JS 来设计复选框的样式。它在正常的 HTML 正文 中工作正常,但在数据表列中则不行。

Here is the fiddle:

https://jsfiddle.net/sohal/gfuuazxL/4/

最佳答案

问题是您在数据表填充数据之前进行 Switchery。。即使您之后执行了此操作,您最终仍然不会在隐藏行上(即页面 ​​#2#3 等上)看到 Switchery。

因此,您必须在数据表初始化后初始化 Switchery,并对所有行执行 Switchery。您可以在 initComplete() 回调中执行此操作,并使用 API every() 方法迭代所有行:

$(document).ready(function() {
  var table = $('#datatable-buttons').DataTable({
    initComplete : function() {
       this.api().rows().every( function ( rowIdx, tableLoop, rowLoop ) {
         this.nodes().to$().find('.js-switch').each(function(i, e) {
           var switchery = new Switchery(e, {
             color: '#26B99A'
           })
         })
       })  
    },
    ...//rest of the options
  })
})

fork fiddle -> https://jsfiddle.net/jpkysyp1/

关于javascript - 在数据表列中设置复选框的样式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37810389/

相关文章:

JavaScript 无限上下元素滚动?

jquery - 使用 if/else 显示/隐藏带复选框的 div

javascript - jQuery:如何隐藏 div 中除 2 个特定元素之外的所有内容

javascript - 检查参数的 URL 并复制到输入中

javascript - 获取 URL 的最后一段

javascript - 如何将点击事件附加到以编程方式创建的 jquery 对象?

javascript - 无法使复选框自定义图像显示复选标记

ruby-on-rails - Rails 表单在提交时将 false 作为 boolean 值的默认值传递

javascript - 类里面的字典?

javascript - 打印 javascript 数组 : print A then a1 a2 a3 B then b1 b2 b4 C then c1 c2 c3 (knockout)