我有一个包含2个条目的对象数组。 DataTable现在提供错误但不显示表。我有类似的构造,似乎工作正常,但由于某种原因,这个没有: HTML:
<form id=rparesponses class="hideme rpadealers">
<table id="responseTbl" class="table table-striped table-border">
<thead>
<tr>
<th>Dealer Email</th>
<th>MesgID</th>
<th>Name</th>
<th>Description</th>
<th>Price</th>
<th>Accept CC</th>
<th>Delivery</th>
<th>Rating</th>
<th>Place Order</th>
</tr>
</thead>
</table>
</form>
JQuery的:
function displayResponses(responses)
{
// var count=rpaResponses.length;
alert("responses.name: "+responses[0].name);
$('#responseTbl').DataTable({
data: responses,
'sort': false,
'searching': false,
'paging': true,
columns:
[
{'data': 'email'},
{'data': 'mesgid'},
{'data': 'name'},
{'data': 'description'},
{'data': 'price'},
{'data': 'ccard'},
{'data': 'delivery'},
{'data': 'rating'},
{'data': 'order'}
],
columnDefs:
[
{'targets': 6,
'render': function(data,type,full,meta)
{
var pform='<form action="javascript: this.preventDefault"><select name="deliver"><option value="Pickup">Pickup</option><option value="Delivery">Delivery</option></select></form>';
if(data)
return data;
else return pform;
}
},
{'targets': 8,
'render': function(data,type,full,meta)
{
return '<button id="order" type="" class="btn btn-primary btn-details">Order</button>';
}
}
]
});
} //end of display responses
对displayResponses的调用是
socket.on('rparesponse', function(data)
{
var rpaResponses=JSON.parse(data);
alert("rpaResponses.length: "+rpaResponses.length);
alert("rpaResponses.name: "+rpaResponses[0].name);
if(rpaResponses.length>0)
localStorage.messageid="";
displayResponses(rpaResponses);
$('#dealers').hide();
$('#rpaResponses').show();
$('#rpaview').hide();
$('#rpawait').hide();
});
使用Devtools,我可以确认传递的arg“response”是一个对象数组。见下文:
rpaResponses: Array[2]
0
:
Object
ccard
:
"true"
delivery
:
"false"
description
:
"Fan Belt for BMW-x5 2012 model e"
email
:
"bert123@mymail.com"
mesgid
:
"ccc89e"
name
:
"Peters Auto "
order
:
false
price
:
"6000"
rating
:
"5"
__proto__
:
Object
1
:
Object
ccard
:
"true"
delivery
:
"false"
description
:
"Fan Belt for BMW-x5 2012 model e"
email
:
"peter123@gmail.com"
mesgid
:
"ccc89e"
name
:
"Peters Auto "
order
:
false
price
:
"5000"
rating
:
"5"
__proto__
:
Object
length
:
2
我正在使用Chrome 54.28 ...... Firefox中存在同样的问题。我正在使用nodejs,socketio,javascript和jquery .....服务器端是可以的,它将表发送到套接字ok ... JSON.stringified然后到达JSON.parse。我还检查了SO之前关于这个问题的问题......没有适用。
任何人都可以告诉我我的错误是什么吗?....也许我的目光正在发生!...我说我是这个人的新手!...我是。
答案 0 :(得分:0)
语法错误...将$(#rpaResponse).show改为$(#rparesponse).show。