无法重新初始化JQuery DataTable [英] Cannot reinitialise JQuery DataTable

查看:2478
本文介绍了无法重新初始化JQuery DataTable的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在使用jquery datatables来显示网格内的数据。在初始化页面加载脚本需要DateTime.Today并进一步处理它们,问题是在初始化页面加载之后,当我尝试用户输入日期进一步处理。我有以下错误。



DataTables警告(表id ='dataTable'):无法重新初始化DataTable。
要检索此表的DataTables对象,请不传递参数或查看bRetrieve和bDestroy的文档

  function getDate(){
var date = $('input [name =myDate]')。val();
返回日期;
}

$('#myDate')。click(updateDate);

函数updateDate(){
$('#dataTable')。dataTable({
bServerSide:true,
sAjaxSource:/ Home / Ajax,
fnServerParams:function(aoData){
var date = getDate();
aoData.push({name:myDate,value );
},
// ...还有更多
}

updateDate();

脚本放在页面的底部。

解决方案

尝试添加bDestroy:对于选项对象文字,例如

  $('#dataTable')。dataTable({
bServerSide:true,
....
bDestroy:true
});


I'm using jquery datatables to display data inside grid. On init page load script take DateTime.Today and process them further, problem is after init page load, when I'm trying to take users input date for further process. I'm having following error.

DataTables warning (table id = 'dataTable'): Cannot reinitialise DataTable. To retrieve the DataTables object for this table, pass no arguments or see the docs for bRetrieve and bDestroy

function getDate() {
    var date = $('input[name="myDate"]').val();
    return date;
}

$('#myDate').click(updateDate);

function updateDate() { 
    $('#dataTable').dataTable({
        "bServerSide": true,
        "sAjaxSource": "/Home/Ajax",
        "fnServerParams": function (aoData) {
            var date = getDate();
            aoData.push({ "name": "myDate", "value": date });
        },
        //... there's more
}

updateDate();

Script is put on the bottom of the page.

解决方案

Try adding "bDestroy": true to the options object literal, e.g.

$('#dataTable').dataTable({
    "bServerSide": true,
    ....
    "bDestroy": true
});

这篇关于无法重新初始化JQuery DataTable的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆