Javascript 使用SpringMVC控制器在JQuery数据表中呈现数据问题
我得到了完美的JSON,响应代码为:200 Ok,但数据没有呈现在表中,它们的绑定可能有问题,请参见以下内容: 来自FireBug: 发布Javascript 使用SpringMVC控制器在JQuery数据表中呈现数据问题,javascript,jquery,spring-mvc,datatables,Javascript,Jquery,Spring Mvc,Datatables,我得到了完美的JSON,响应代码为:200 Ok,但数据没有呈现在表中,它们的绑定可能有问题,请参见以下内容: 来自FireBug: 发布 Parametersapplication/x-www-form-urlencoded bRegex false bRegex_0 false bRegex_1 false bSearchable_0 true bSearchable_1 true bSortable_0 true bSortable_1 true iColumns
Parametersapplication/x-www-form-urlencoded
bRegex false
bRegex_0 false
bRegex_1 false
bSearchable_0 true
bSearchable_1 true
bSortable_0 true
bSortable_1 true
iColumns 2
iDisplayLength 10
iDisplayStart 0
iSortCol_0 0
iSortingCols 1
mDataProp_0 0
mDataProp_1 1
sColumns
sEcho 1
sSearch
sSearch_0
sSearch_1
sSortDir_0 asc
响应:
{"sEcho": 1,"iTotalRecords": 2,"iTotalDisplayRecords": 2,"aaData": [{"name": "Sandeep1","mark": "201"},{"name": "Sandeep2","mark": "202"}]}
sEcho 1
iTotalRecords 2
iTotalDisplayRecords 2
aaData [Object { name="Sandeep1", mark="201"}, Object { name="Sandeep2", mark="202"}]
0 Object { name="Sandeep1", mark="201"}
1 Object { name="Sandeep2", mark="202"}
DataTables warning (table id = 'DataTables_Table_0'): Requested unknown parameter '0' from the data source for row 0
JSON:
{"sEcho": 1,"iTotalRecords": 2,"iTotalDisplayRecords": 2,"aaData": [{"name": "Sandeep1","mark": "201"},{"name": "Sandeep2","mark": "202"}]}
sEcho 1
iTotalRecords 2
iTotalDisplayRecords 2
aaData [Object { name="Sandeep1", mark="201"}, Object { name="Sandeep2", mark="202"}]
0 Object { name="Sandeep1", mark="201"}
1 Object { name="Sandeep2", mark="202"}
DataTables warning (table id = 'DataTables_Table_0'): Requested unknown parameter '0' from the data source for row 0
JSP视图:
<div class='table-container'>
<table cellpadding='0' cellspacing='0' border='0' class='display jqueryDataTable'>
<thead>
<tr>
<th>Name</th>
<th>Mark</th>
</tr>
</thead>
<tbody>
</tbody>
</table>
</div>
<script type="text/javascript">
jQuery(document).ready(function() {
jQuery('.jqueryDataTable').dataTable( {
'bProcessing': true,
"bServerSide": true,
'sAjaxSource': '<jsp:expression>contextPath</jsp:expression>/ajaxDatatable1',
'bJQueryUI': true,
"fnServerData": function ( sSource, aoData, fnCallback, oSettings ) {
debugger;
alert("data in fnServerData : "+ aoData);
oSettings.jqXHR = $.ajax( {
"dataType": 'json',
"type": "POST",
"url": sSource,
"data": aoData,
"success": fnCallback
} );
},
'aoColumns': [
{ 'mData': 'name'},
{ 'mData': 'mark'}
]
} );
} );
</script>
请给我指出正确的方向。谢谢aa数据是您传递的对象数组 aoColumns定义应接收数据的列 mDataProp表示处理数据的方式(如果您给它一个字符串,它会将数据视为字符串)
您有更多信息:您好,这里有一个与您类似的问题:@Akinaru No它不工作。Thanks@Akinaru我刚才看到了,但这次你又给了我暗示。谢谢,我让它工作了。只是aaData(发送的json)和mData('aoColumns')不匹配。@Akinaru您能解释一下为什么我们需要在aaData中发送json数据(json.aaData=[['1'、'1'、'1']、[2'、'2'、'2'、'2']]),并在mDataProp中接收。这没问题,但在给定的url“mDataProp”上不存在,而是他们有mData??我认为这是一个选项,用于与以前的版本向后兼容,但我不确定。