Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/88.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/0/amazon-s3/2.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
Jquery 数据表在调整窗口大小时抛出错误_Jquery_Webforms_Datatables - Fatal编程技术网

Jquery 数据表在调整窗口大小时抛出错误

Jquery 数据表在调整窗口大小时抛出错误,jquery,webforms,datatables,Jquery,Webforms,Datatables,我有一个数据表 当我设置它时,我没有得到任何错误,表格是正确生成的,但是每当我调整窗口大小时,我都会得到以下错误: 0x800a138f-JavaScript运行时错误:无法获取属性“style” 指未定义的或空的引用 我不认为我可以在这里复制代码,但我可以保证表结构是正确的 这是我用来创建DataTable的: function initDataTable() { if ($.fn.dataTable.isDataTable($('#grdPrincipal'))) {

我有一个数据表

当我设置它时,我没有得到任何错误,表格是正确生成的,但是每当我调整窗口大小时,我都会得到以下错误:

0x800a138f-JavaScript运行时错误:无法获取属性“style” 指未定义的或空的引用

我不认为我可以在这里复制代码,但我可以保证表结构是正确的

这是我用来创建DataTable的:

function initDataTable() {
    if ($.fn.dataTable.isDataTable($('#grdPrincipal'))) {
        $('#grdPrincipal').DataTable().destroy();
        initDataTable();
    } else {
        $("#grdPrincipal")
            .DataTable({
                scrollY: 210,
                scrollX: true,
                fixedHeader: true,
                fixedColumns: true,
                paging: false,
                info: false,
                searching: false
            });
    }
}
由于我在asp.net webforms项目中使用了UpdatePanel,因此每次回发时都必须运行此代码,因为每次都会重建表

回发或任何事情都没有问题,正如我所说,唯一的问题是当我调整窗口大小时


可能是什么?

在更新updatePanel之前,请尝试销毁datatable,如下所示:

var prm = Sys.WebForms.PageRequestManager.getInstance();
    function BeginRequestHandler(sender, args) {
        //Runs before updatePanel starts updating
        $('#grdPrincipal').DataTable().destroy();
    }

    function EndRequestHandler(sender, args) {
        initDataTable();
        //Runs after updatePanel has finished updating
    }
    prm.add_beginRequest(BeginRequestHandler);
    prm.add_endRequest(EndRequestHandler);

我在这里做了一些不同的事情,我注意到第一次创建dataTable时,我可以根据自己的意愿调整窗口大小,但是在重新加载updatePanel之后,如果我调整窗口大小,就会抛出这个错误。当重新加载updatePanel时,该表将重新生成,因此不再是数据表。我有一个->
函数pageLoad(){initDataTable();}
Hmm,看起来您需要另一个事件回调。。“.resize()”jQuery的功能。我写在我的帖子里,一分钟后看一看。现在看一看,希望它能帮上忙。这实际上毁了我的桌子。它在复制行。