【问题标题】:Rendering data issue in JQuery Datatable with Spring MVC controller使用 Spring MVC 控制器在 JQuery Datatable 中呈现数据问题
【发布时间】:2013-07-26 03:09:13
【问题描述】:

我得到 JSON 的完美响应代码:200 好的,但是数据没有在表中呈现,它们可能在绑定中存在问题,请参阅以下内容:

来自 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    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"}]}

JSON:

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"}

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>

Javascript 错误:

DataTables warning (table id = 'DataTables_Table_0'): Requested unknown parameter '0' from the data source for row 0

请指出正确的方向。谢谢

【问题讨论】:

  • 你好,这里有一个和你类似的问题:stackoverflow.com/questions/11472075/…
  • @Akinaru 不,它不起作用。谢谢
  • @Akinaru 我早些时候看到了这个,但这次你又给了我提示。谢谢我让它工作了。只是 aaData(sent json) 和 mData ('aoColumns') 不匹配。
  • @Akinaru 你能解释一下为什么我们需要在aaData中发送json数据(json.aaData = [['1','1','1','1'],['2' ,'2','2','2']] ) 并在 mDataProp 中接收。

标签: javascript jquery spring-mvc datatables


【解决方案1】:

aaData 是您传递的对象数组。

aoColumns 定义应该接收数据的列。

mDataProp 表示数据的处理方式(如果你给它一个字符串,它会将数据视为字符串)

您有更多信息:http://datatables.net/ref#

【讨论】:

  • 没关系,但在给定的 url “mDataProp” 不存在,而是他们有 mData ??
  • 我认为这是一个与以前版本向后兼容的选项,但我不确定。
猜你喜欢
  • 2019-04-29
  • 2011-06-09
  • 2018-09-07
  • 2010-09-14
  • 1970-01-01
  • 1970-01-01
  • 2017-07-08
  • 2014-02-23
  • 1970-01-01
相关资源
最近更新 更多