问题描述:DataTables warning: table id=dataTable - Requested unknown parameter 'acceptId' for row 0. For more。
解决:在配置中配置
"columnDefs":[{
"targets":'_all',
"defaultContent":"",
}],
原因:表头的字段,表格中的json没有返回该字段及其数据。
其他解决办法:(参考地址)
配置
table = $("#dataTable").dataTable({
"scrollY": "400px", //高度
"scrollX": true, //左右滚动条
"ordering":false,//thead上的排序按钮
"bLengthChange": false,//分页条数选择按钮
"bProcessing": true,//显示加载中
"bInfo": false,//页脚信息显示
"searching":false,//搜索输入框显示
"sPaginationType": "full_numbers",//分页显示样式
"paging":true,//
"sAjaxSource": '<%= basePath %>sellcar/getSellCarOrderList',
"bProcessing" : true,
"bServerSide" : true,
"oLanguage": {
"sLengthMenu": "每页显示 _MENU_ 条",
"sZeroRecords": "没有找到符合条件的数据",
"sProcessing": "我也是醉了,正在加载数据...",
"sInfo": "当前第 _START_ - _END_ 条 共计 _TOTAL_ 条",
"sInfoEmpty": "没有有记录",
"sInfoFiltered": "(从 _MAX_ 条记录中过滤)",
"sSearch": "搜索:",
"oPaginate": {
"sFirst": "首页",
"sPrevious": "前一页",
"sNext": "后一页",
"sLast": "尾页"
}
},
"aoColumns": [
//{ "sDefaultContent": ' '},
{ "mData":"brandName",'sClass':'left',
"mRender":function(data,type,full) {
var cusId = full.customerId;
var sellNo = full.sellNo;
var content = "<td><input type='checkbox' name='batchAllocated' id='batchAllocated' value='"+cusId+"' sell_no='"+sellNo+"'></td>";
return content;
}
},
{ "mData":"brandId",
"mRender":function(data,type,full){
if(full.carBrand!=null){
return full.carBrand.brandName;
};
return "";
}
},
{ "mData":"serieId",
"mRender":function(data,type,full){
if(full.carSerie!=null){
return full.carSerie.serieName;
};
return "";
}
},
{ "mData":"customeId",
"mRender":function(data,type,full){
if(full.customer!=null){
return full.customer.userName;
};
return "";
}
},
{ "mData":"phoneNo"},
{ "mData":"createdFormat"},
{ "mData":"sellStatus",'sClass':'left',
"mRender":function(data,type,full) {
var sellStatus = full.sellStatus;
var content = "";
if(sellStatus==0){
content = "待估车";
}else if(sellStatus==10){
content = "估车成功";
if(full.recordStatus == "wlr"){
content = "估车成功,未录入";
}else if(full.recordStatus == "ylr"){
content = "已录入";
}
if(full.item !=null){
var item = full.item;
if(item.carStatus == "ysh"){
content = "通过审核";
if(item.carOnSale == 0){
content = "待上架";
}else if(item.carOnSale ==1){
content ="上架";
}else if(item.carOnSale == 2){
content = "下架";
}else if(item.carOnSale == 3){
content = "已售";
}else if(item.carOnSale == 4){
content = "申请下架";
}
}else if(item.carStatus =="dsh"){
content = "待审核";
}else if(item.carStatus == "wsh"){
content = "未通过审核";
}
}
}else if(sellStatus==20){
content = "重新估车";
}else if(sellStatus == 30){
content = "估车失败,结束";
}else if(sellStatus == 40){
content = "无效信息";
}
return content;
}
},
{ "mData":"acceptId",
"mRender":function(data,type,full){
if(data !=null){
if(full.acceptUser !=null){
return full.acceptUser.userName;
}
}
}
},
{ "mData":"carStatus",'sClass':'left',
"mRender":function(data,type,full) {
var content = "<a href='javascript:void(0);' class='show_info' info_id='"+full.sellNo+"'>查看</a>";
return content;
}
},
{ "mData":"isAllocated",'sClass':'left',
"mRender":function(data,type,full) {
var isAllocated = full.isAllocated;
var content = "";
if(isAllocated==0){
content = "<a href='javascript:void(0);' class='change_info' info_id='"+full.sellNo+"' cus_id='"+full.customerId+"'>分配</a>";
}else{
content = "<a href='javascript:void(0);' class='change_info' info_id='"+full.sellNo+"' cus_id='"+full.customerId+"'>重新分配</a>";
}
return content;
}
}],
// "bLengthChange": true,// 控制每页显示记录数
"iDisplayLength": 10, // 每页显示数量
"fnServerData" : function(sSource, aoData, fnCallback) {
$.ajax({
"type" : 'post',
"url" : sSource,
"dataType" : "json",
"data" : {
aoData : JSON.stringify(aoData),
searchData: JSON.stringify(searchData)
},
"success" : function(resp) {
fnCallback(resp);
var datas=resp.aaData;
},
error: function(resp){
}
});
}/* ,
"fnRowCallback": function(nRow, aData, iDisplayIndex) {
// 当创建了行,但还未绘制到屏幕上的时候调用,通常用于改变行的class风格,此处用于显示‘表格序号’
$('td:eq(0)', nRow).html(iDisplayIndex+1);
return nRow;
} */
});
提示acceptId找不到,解决方案:
{
"mData":"acceptId",
"mRender":function(data,type,full){
if(data !=null){
if(full.acceptUser !=null){
return full.acceptUser.userName;
}
}else{
return "";
}
}
}
在写mRender时,必须所有路径都要有返回值,做了空值判断,但是没有给返回值所以出现了上述错误,做个记录,以备后续使用。