Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/apache/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 检索元素的dataTable对象_Javascript_Jquery_Datatables_Datatables 1.10 - Fatal编程技术网

Javascript 检索元素的dataTable对象

Javascript 检索元素的dataTable对象,javascript,jquery,datatables,datatables-1.10,Javascript,Jquery,Datatables,Datatables 1.10,我正在尝试使用jQuery获取jQuery数据表的对象。我正在使用此线程来完成此任务: 出于某种原因,这不起作用。当我调用$('.dynamic wide table').dataTable()时它使我的表再次初始化,并使表呈现两次,如下所示: 根据上面发布的链接,它不应该这样做,而应该只是获取对象 这是我的密码: main.js(加载到每个页面的HTML头部) 获取对象: $(document).ready(function() { $('.dynamic-wide-table'

我正在尝试使用jQuery获取jQuery数据表的对象。我正在使用此线程来完成此任务:

出于某种原因,这不起作用。当我调用
$('.dynamic wide table').dataTable()时它使我的表再次初始化,并使表呈现两次,如下所示:

根据上面发布的链接,它不应该这样做,而应该只是获取对象

这是我的密码:

main.js
(加载到每个页面的HTML头部)

获取对象:

$(document).ready(function() {
    $('.dynamic-wide-table').dataTable();
});

评论如下:

您将无法获取单个tables对象,因为该类的每个元素都有自己的
dataTable
对象

您可以遍历这些类并检索每个单独的类。为了获得单个元素
dataTable
对象,您需要知道该对象来自哪个表元素:

$(document).ready(function() {
    $('.dynamic-wide-table').each(function(i){
        console.log('table no. ' + i );
        // Should print the dataTable object for each element to the console
        console.log($(this).dataTable());
    });
});
理想的做法是为每个单独的表提供一个id,然后使用id检索
dataTable
对象:

$('#tableId').dataTable();

嗯,我不认为你需要同时设置这两个

如果删除get对象代码,它应该停止触发两次


您已经在
main.js
中执行了此操作,但同时加载了选项。

您正在尝试获取哪个对象?datatables对象。回答很糟糕。没有解决我想要的任何问题。很抱歉,我从“它导致我的表再次初始化并使表呈现两次”中得到了它。我的错误。我无法在
main.js
中设置变量,因为我在多个页面上有多个表。换句话说,一个变量不能引用页面上的多个表。因此,我需要在需要时检索每个页面上的对象本身,所以您可以将它实例化为每个表的一个变量。然后,每个变量都将包含一个对象,您可以在该对象上调用函数来对该表执行操作。每个页面都有不同数量的表,我无法通过编程知道给定页面上有多少个表。@Nic您必须实例化每个表,否则它们将无法呈现?是的,这就是我通过类名引用的原因。因此,将为给定页面上的每个表创建对象。在某些页面上,我需要访问datatables对象,这就是为什么我想做我正在做的事情。
$('#tableId').dataTable();