javascript - 使用 php 从 AJAX 调用更新 DataTable

标签 javascript jquery datatables

我正在使用示例 -> http://datatables.net/examples/api/add_row.html

在我的情况下,我向 php 脚本发送 ajax 调用,该脚本收集参数数组。然后,我采用这些参数并尝试动态(且明显)在数据表中插入新行

在行:t.row.add( [我收到错误:“无法读取未定义的属性'add'”

有人可以帮忙吗?

<script>

    var asInitVals = new Array();
var oTable = $('.datatable-add-row table').dataTable({
    "bJQueryUI": false,
    "bAutoWidth": false,
    "sPaginationType": "full_numbers",
    "sDom": '<"datatable-header"fl><"datatable-scroll"t><"datatable-footer"ip>',
    "aaSorting":[[0,'desc']],
    "oLanguage": {
        "sSearch": "<span>Filter all:</span> _INPUT_",
        "sLengthMenu": "<span>Show entries:</span> _MENU_",
        "oPaginate": { "sFirst": "First", "sLast": "Last", "sNext": ">", "sPrevious": "<" }
    }
     });

     $(".dataTables_wrapper tfoot input").keyup( function () {
          oTable.fnFilter( this.value, $(".dataTables_wrapper tfoot input").index(this) );
      });

     (function newjobs() {
     var t = $('.datatable-add-row table').dataTable();
         var inputjob = $.ajax({
    type: "POST",
            url: "create_new_job.php",
    cache:false,
    success: function(data) {
        $('#invisible_button').on( 'click', function () {
            t.row.add( [
            data[0],
            data[1],
            data[2],
            data[3],
            data[4],
            data[6],
            data[7],
            data[8]             
            ] ).draw();
        } );
        $('#invisible_button').click();
    }
});

    inputjob.done(function(data) {      
        setTimeout(newjobs, 10000);    
});

    inputjob.fail(function(data) { 
        alert('Job not added....'); 
    });
   })();

</script>

最佳答案

对此进行调试,我们会发现它告诉您“add”不是“undefined”的属性。这意味着“row”是 t 的未定义成员。这告诉我们 t 是某种东西[或者它会从说“行”不是未定义的属性开始]。

所以这告诉我 t 是某种东西,只是不是您期望的数据表对象。

查看您在帖子中包含的示例链接,我看到正在使用“.DataTable()”。 JavaScript 中的对象和属性区分大小写,因此“.dataTable()”与“.DataTable()”不同。

更改大小写,看看这是否可以解决您的问题。

关于javascript - 使用 php 从 AJAX 调用更新 DataTable,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23437102/

相关文章:

python - 来自 pandas 的 JS 数据表

javascript - jQuery html() 无法获取 &lt;input&gt;?

javascript - 使用 for 循环和 forEach 从网站中提取 html 以获取 JSON 对象数组

javascript - 无法在 React 中返回带有地理位置坐标的 JSX

xsl 文件中输入字段的 Javascript 验证

ajax - jQuery递归ajax poll使用setTimeout控制轮询间隔

javascript - 数据表和 moment.js 时间过滤

javascript - jQuery 的 Google.load() - 不适用于 DataTables.net

javascript - Vaadin @Javascript : clear cache for updated JS file

javascript - 在javascript中动态解析json对象