DataTables 警告:从数据源请求未知参数 '4' 用于行 ''

Posted

技术标签:

【中文标题】DataTables 警告:从数据源请求未知参数 \'4\' 用于行 \'\'【英文标题】:DataTables warning: Requested unknown parameter '4' from the data source for row ''DataTables 警告:从数据源请求未知参数 '4' 用于行 '' 【发布时间】:2014-01-16 16:28:06 【问题描述】:

是我寻找这个问题的日子和日子,但没有解决它! 在将学生添加到我的数据库后会出现此警告。数据的持久性是好的,所以我需要隐藏这个错误或调整它。 所以我有一个数据表给我这个错误:

这是我的html代码:

<script type="text/javascript">
    $(document).ready(function () 

        $("#companies").dataTable(
            "bServerSide": true,
            "sAjaxSource": "/studentiSource",
            "bProcessing": true,
            "sPaginationType": "full_numbers",
            "bJQueryUI": true,
            "aoColumns": [
                            "sName": "ID", "mDataProp": null,
                             "bSearchable": false,
                             "bSortable": false,
                             "bVisible": false
                                 ,
                   "sName": "NOME",,
                   "sName": "COGNOME",
                   "sName": "USERNAME",
                   "sName": "PASSWORD" ,
                   "fnRender": function (oObj) 
                      console.log(oObj);                          
                      return '<a href=$pageContext.request.contextPath/modificaStudente.jsp?id=' + oObj.aData[0] + '>' + 'Gestisci' + '</a>';
                    

                 ]
     ).makeEditable(
         sUpdateURL : "/updateStudenti" ,
         sAddURL: "/studenteServlet",
         sDeleteURL: "/deleteStudenti",
         fnShowError: function (message, action) 
             switch (action) 
                 case "update":
                     jAlert(message, "Update failed");
                     break;
                 case "delete":
                     jAlert(message, "Delete failed");
                     break;
                 case "add":
                     $("#lblAddError").html(message);
                     $("#lblAddError").show();
                     break;
             
         ,
         fnStartProcessingMode: function () 
             $("#processing_message").dialog();
         ,
         fnEndProcessingMode: function () 
             $("#processing_message").dialog("close");
         
      );
                );

表格是:

 <div id="container">
        <div id="demo_jui">
        <button id="btnAddNewRow" value="Ok">Aggiungi nuovo studente...</button> 
        <button id="btnDeleteRow" value="cancel">Rimuovi utente selezionato</button>
        <div id="processing_message" style="display:none" title="Processing">Attendere.. Caricamento dati in corso</div>
            <table id="companies" class="display">
                <thead>
                    <tr>
                        <th>ID</th>
                        <th>Nome</th>
                        <th>Cognome</th>
                        <th>Username</th>
                        <th>Password</th>
                        <th>Dispense</th>


                    </tr>
                </thead>
                <tbody >

                </tbody>
            </table>
        </div>


        <form id="formAddNewRow" action="#" title="Aggiungi nuovo studente">
                    <label id="lblAddError" style="display:none" class="error"></label>

            <input type="hidden" id="id" name="id" value="-1" rel="0" />
            <input type="hidden" value="aggiungi" name="action">
            <label for="name">Nome</label><input type="text" name="nome" id="name" class="required" rel="1" />
            <br />
            <label for="name">Cognome</label><input type="text" name="cognome" id="address" rel="2" />
            <br />
            <label for="name">Username</label><input type="text" name="username" id="postcode"/>
            <br />
            <label for="name">Password</label><input type="text" name="password" id="town" rel="3"/>
            <br />

        </form>

    </div>

我正在使用 Datatables 1.9.4

【问题讨论】:

请发布来自服务器的 JSON 响应 【参考方案1】:

我不能给你一个明确的答案,因为你没有包含来自服务器的 JSON 响应。

此消息通常表示 DataTables 正在查看数组位置 4 的数据源(这是第五个元素 -- 密码字段),但没有找到它。

您应确保返回的响应包含数据表定义中指定的所有字段,包括密码字段。

【讨论】:

【参考方案2】:

您的 JSON 数组的第六个元素不包含键“4”的值,因为您正在获取一个空值,尝试将您的 JSON 数组解析为 http://jsoneditoronline.org/,您会看到它。

【讨论】:

以上是关于DataTables 警告:从数据源请求未知参数 '4' 用于行 ''的主要内容,如果未能解决你的问题,请参考以下文章

DataTables 警告 - 请求第 0 行第 0 列的未知参数“0”

DataTables 错误:从第 0 行的数据源请求未知参数“1”

DataTables 警告:表 id=id - 请求行 row-index、列 column-index 的未知参数“parameter”

数据表为第 0 行请求未知参数“0”

带有 colspan 的数据表,警告:请求的未知参数

带有 ajax 的 DataTables 1.10.6,为第 0 行请求未知参数 0