Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/381.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/1/php/276.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 Datatables Jquery Ajax_Javascript_Php_Jquery_Ajax_Datatable - Fatal编程技术网

Javascript Datatables Jquery Ajax

Javascript Datatables Jquery Ajax,javascript,php,jquery,ajax,datatable,Javascript,Php,Jquery,Ajax,Datatable,我在重新初始化数据表时遇到问题。下面的代码通过从getOrderStatus.php中提取json来工作,成功后将所有json数据放入javascript变量中,然后我可以将这些变量设置为div标记,并在我的网页上显示我需要的数据。但是,一旦ajax循环运行并显示以下错误消息“DataTables警告:table id=mytable-无法重新初始化Datatable”,则无法重新初始化Datatable。我相信我需要一种方法来杀死表并在ajax刷新时重新创建它,但是我似乎找不到一种方法来做到这

我在重新初始化数据表时遇到问题。下面的代码通过从getOrderStatus.php中提取json来工作,成功后将所有json数据放入javascript变量中,然后我可以将这些变量设置为div标记,并在我的网页上显示我需要的数据。但是,一旦ajax循环运行并显示以下错误消息“DataTables警告:table id=mytable-无法重新初始化Datatable”,则无法重新初始化Datatable。我相信我需要一种方法来杀死表并在ajax刷新时重新创建它,但是我似乎找不到一种方法来做到这一点

     $(document).ready(function ajaxLoop(){

      $.ajax({ 

        url: 'getOrderStatus.php',                     // Url of Php file to run sql         
        data: "",                                      
        dataType: 'json',                              //data format      
        success: function updateOrder(data)               //on reciept of reply
        {
          var OrdersSubmitted = data.OrderStatus[0].SUBMITTED;     //get Orders Submitted Count
          var OrdersFulfilled = data.OrderStatus[0].FULFILLED;     //get Orders Fulfilled count
          var LastTransaction = data.LastTransaction[0];           //get Last Transaction


          //--------------------------------------------------------------------
          // 3) Update html content
          //--------------------------------------------------------------------
          $('#OrdersSubmitted').html(OrdersSubmitted);
          $('#OrdersFulfilled').html(OrdersFulfilled); //Set output html divs
          $('#mytable').dataTable({
                  "data": LastTransaction,
                  "aging": false,
                  "searching": false,
                  "columns": [
                      { "title": "ORDER_ID" }, // <-- which values to use inside object
                      { "title": "STATUS" },
                      { "title": "ACC_NUMBER" },
                      { "title": "SORT_CODE" }

                      ]
                    });


        setTimeout(ajaxLoop, 2000);
        } 

      });
    });
$(document).ready(函数ajaxLoop(){
$.ajax({
url:'getOrderStatus.php',//要运行sql的php文件的url
数据:“,
数据类型:“json”,//数据格式
成功:函数updateOrder(data)//在收到回复时
{
var OrdersSubmitted=data.ordersstatus[0]。已提交;//获取已提交订单数
var OrdersFulfilled=data.ordersstatus[0]。已完成;//获取已完成订单计数
var LastTransaction=data.LastTransaction[0];//获取最后一个事务
//--------------------------------------------------------------------
//3)更新html内容
//--------------------------------------------------------------------
$('#ordersupmitted').html(ordersupmitted);
$('#OrdersFulfilled').html(OrdersFulfilled);//设置输出html divs
$('#mytable')。数据表({
“数据”:上次交易,
“老化”:假,
“搜索”:错误,
“栏目”:[
{“title”:“ORDER_ID”},//您是否尝试使用“bDestroy”:true

然后选项应为destroy:true(老化应更改为分页):


当我添加“bDestroy”时仍然会遇到同样的问题:真的,不幸地添加了另一个代码块?如果您使用的是API,那么是哪个版本?
$('#mytable').dataTable({
                  "data": LastTransaction,
                  "aging": false,
                  "searching": false,
                  "bDestroy": true,
                  "columns": [
                      { "title": "ORDER_ID" }, // <-- which values to use inside object
                      { "title": "STATUS" },
                      { "title": "ACC_NUMBER" },
                      { "title": "SORT_CODE" }

                      ]
                    });
var table = $('#mytable');
if ($.fn.DataTable.fnIsDataTable(table)) {
//It's already a datatable
  //clear and destroy
  table.dataTable().fnClearTable();
  table.dataTable().fnDestroy();

}


**It seems your are using latest datatable version:**
 $('#mytable').dataTable({
                      "data": LastTransaction,
                      "paging": false,
                      "searching": false,
                      "destroy": true,
                      "columns": [
                          { "title": "ORDER_ID" }, // <-- which values to use inside object
                          { "title": "STATUS" },
                          { "title": "ACC_NUMBER" },
                          { "title": "SORT_CODE" }

                          ]
                        });
if($.fn.DataTable.isDataTable("#myTable"))
{
$('#myTable').DataTable().clear().destroy();
}