【问题标题】:TypeError: c is undefined while saving a new entry using New Entry Form in DataTableTypeError: c is undefined while save a new entry using New Entry Form in DataTable
【发布时间】:2014-09-02 07:06:04
【问题描述】:

我有这个表,它显示了一个带有表单的引导模式,当我填写这个表单并保存我的数据或单击关闭模式时,我想刷新数据表,但这被捕获并出现错误:

 TypeError: c is undefined 

 ...dErrors";g[w0]("postSubmit",[c,n,j]);if(!c.error)c.error="";if(!c[(j4a+R6a+K8+i1...

dataTables.editor.min.js 的第 296 行

当我刷新 ajax 数据时显示此错误,这是我的代码:

var editor;
var oTable;
function getStudentdetails(id) {
    editor = new $.fn.dataTable.Editor({  
       dom: "Tfrtip",
       table: "#table_student_details",   
       fields: [ {
              label: "Id:",
              name: "id",
              attr:  {
                 maxlength: 50,
                 name:"id",
                 placeholder: 'ID'
                    }
              }, {
            label: "Name:",
            name: "name"
            }
          ], 
         ajaxUrl: {
             "create":  "/addStudentdetails",
              "edit":   "/editStudentdetails",
              "remove": "/deleteStudentdetails"
               },

        });

   oTable = $('#table_student_details').DataTable({
       dom: "Tfrtip",
       destroy: true,
       ajax: {
           "url": url_prefix + "/getStudentDetails",
           "data": function(d) {
                d.id = id;
            }
         },
       tableTools: {
          sRowSelect: "os",
          aButtons: [{
            sExtends: "editor_create",
            editor: editor
            }, {
            sExtends: "editor_edit",
            editor: editor
            }, {
            sExtends: "editor_remove",
            editor: editor
          }]
     }
 });
}

我使用文件和版本,也按以下顺序:

    jquery-1.11.1.min.js
    jquery.dataTables.min.js-> 1.10.2
    dataTables.bootstrap.js
    dataTables.tableTools.min.js-->2.2.2
    dataTables.editor.min.js ->1.3.2

请有人帮助我。对于帮助参考,我已将我的 javascript 文件放在这里 http://jsfiddle.net/Lujjz9ag/1/

【问题讨论】:

    标签: javascript jquery ajax twitter-bootstrap datatables


    【解决方案1】:

    即使我在使用列过滤器时也遇到了同样的错误

    TypeError: c 未定义

    ...dErrors";gw0;if(!c.error)c.error="";if(!c[(j4a+R6a+K8+i1...

    我意识到只有在有空数据响应时才会发生这种情况 响应看起来像这样 {"iTotalRecords":0,"iTotalDisplayRecords":0,"aaData":NULL}

    在这里您可以看到 aaData 为 NULL。数据表总是在响应中查找一个数组并检查长度,这会引发错误。 因此,如果 aaData 为空并且已修复,我将其转换为数组。

    {"iTotalRecords":0,"iTotalDisplayRecords":0,"aaData":[]}

    【讨论】:

      猜你喜欢
      • 2018-05-17
      • 1970-01-01
      • 2022-10-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-07-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多