绑定jquery数据表给出错误“”;请求的未知参数'0'来自行0”的数据源;

binding jquery datatable gives error "Requested unknown parameter '0' from the data source for row 0"

本文关键字:数据源 参数 请求 数据表 jquery 出错 错误 绑定 未知      更新时间:2023-09-26

我正在使用jquery为jquery数据表创建json格式,但它给出错误"DataTables警告(表id='tblDynamicModifierItems2'):从数据源请求了行0的未知参数'0'"

我的Html是

 <table id="tblDynamicModifierItems" class="tblDynamicModifierItems table table-hover table-nomargin dataTable table-bordered dataTable-scroller dataTable-tools">
                                <tbody></tbody>
                            </table>

我的Jquery代码是

var aaData = [];
     var ModifierItemCode = "1";
            var Description = "10 cane rum"
            aaData.push({
                "ModifierItemCode": ModifierItemCode,
                "ModifierItem": Description,
                "Delete": "Delete"
            });
     var oTable = $("#tblDynamicModifierItems").dataTable({
                    "aaData": aaData,
                    "aoColumns": [{ "bVisible": false }, { "sTitle": "Description" }, null],
                });
                oTable.fnSort([[1, 'asc']]);

有人能帮我解决这个问题吗?

您需要使标记正确。jQuery dataTables对此非常敏感。定义标题<th>很重要,这样dataTables就有机会知道每行数据中应该有多少列。

<table id="tblDynamicModifierItems" class="tblDynamicModifierItems table table-hover table-nomargin dataTable table-bordered dataTable-scroller dataTable-tools">
    <thead>
       <tr>
           <th>ModifierItemCode</th>
           <th>ModifierItem</th>
           <th>Delete</th>
        </tr>
    </thead>    
    <tbody></tbody>
</table>

此外,您必须告诉dataTables每个aaData项目的哪个部分应该对应于哪个列:

var oTable = $("#tblDynamicModifierItems").dataTable({
     "aaData": aaData,
     "aoColumns": [
         { mDataProp : "ModifierItemCode" },
         { mDataProp : "ModifierItem" },         
         { mDataProp : "Delete" }
     ]     
});

演示中的代码->http://jsfiddle.net/s9Lag6mc/

关于你的"aoColumns": [{ "bVisible": false }, { "sTitle": "Description" }, null],,我不完全确定你想做什么,但如果你想隐藏第一列,只需将bVisible: false添加到第一个aoColumns项目中,以此类推


至于你的fnCreatedRow问题:想想看,你正在插入一个对象。因此,与其使用alert(aData[0])(或其他),不如使用

alert(aData.ModifierItemCode);

叉小提琴->http://jsfiddle.net/0aLys2d3/