jquery - DataTable实例获取HTML元素ID

标签 jquery datatables

上下文:

我正在同时使用多个数据表(同一页面)。我将 DataTables 对象保留为全局变量,例如

window.table_one = $('#mytableOne').DataTable( options );
[...]
window.table_two = $('#theirTableTwo').DataTable( options2 );

问题:

我在 https://datatables.net 上能找到的尽可能多和 stackoverflow 一样,DataTables 不允许获取调用 DataTables 的 HTML 元素表的 id。

尝试:

幸运的是,我们可以从 DataTables 对象中使用 jQuery,从而获取 id:

window.table_one.$('tr').closest('table').attr('id')

但是像这样调用 jQuery 感觉就像用坦克捣碎草莓,你有更简单的方法吗?

我的另一个想法是将 DataTables 实例与 html id 一起保存在全局“数组”中。例如

window.tables = {
    'mytableOne': $('#mytableOne').DataTable( options )
}
[...]
window.tables[ '#theirTableTwo' ].DataTable( options2 )

看起来更轻但更难看。

有哪些好的做法?我知道应该担心全局变量,但我有点坚持它(维护旧网站)。

最佳答案

如果您已经拥有 dataTable 实例,您可以尝试以下操作:

myDataTable.context[0].sTableId

关于jquery - DataTable实例获取HTML元素ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51615093/

相关文章:

javascript - jQuery-Datatables 下拉列表仅适用于某些列

javascript - 延长jquery方法的执行时间

jquery - 如何在 Datatables.net 的响应式 View 中显示多于 1 行?

jquery - 数据表 - 回调后保留选定的页码

javascript - 根据另一个div的文本内容更改div的底部边框

javascript - 如何从任何 jquery 对象中获取具有相同类名的所有元素?

javascript - 如何使用 .css() 应用 !important?

javascript - 数据表 + lengthMenu + 全部 + 服务器端处理 + 不工作

javascript - 如何从 JSON 数组创建 jquery 数据表而不声明列

r - 在 DataTable 输出中使用 Shiny 输入