Datatables如何动态改变列宽?

在datatables中文网上找到的插件是colResizable,直接调用$('.table').colResizable()确实可以直接动态改变效果。
目前有一个问题,如果我表格在一个弹出层里面,我在弹出层出来之后再渲染表格,然后再绑定colResizable(),当前状态下可以生效,但是如果我关掉这个弹出层,再打开这个弹出层,动态改变列宽效果就没有了!我试过把这句调用函数放在datatables的initComplete里、drawCallBack里、弹出层绑定函数里,统统没有用。
我看这个调用函数是在<table>前面加了一个div专门包含所有可以动态调整的边框,对齐了表格的边框,但是关掉再打开弹出层,这个div就没有了,貌似没有加载第二次。
忘了说,配置datatables的时候最后destroy了,以便于下次再打开的时候重新draw,究竟是哪里可能有错误哇?搞了一天没搞出来,或者大神们还有哪些可以动态改变表格列宽的插件,求推荐

阅读 8.7k
2 个回答
新手上路,请多包涵

可以试试放在初始化完毕的事件监听里:
//初始化完毕

.on( 'init.dt', function () {  
    $('.table').colResizable();         
})
新手上路,请多包涵

我也遇到题主一样的窘境了。。。请问一下你最后解决了吗?

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题