DataTables warning:Requested unknown parameter'0'from the data source for row 0

19562 ワード

第一の方法:jsにHtmlをセットしなくてもいいです.
<table id="myTable">

        <thead>

            <tr>

                <th>Title-1</th>

                <th>Title-2</th>

                <th>Title-3</th>

                <th>Title-4</th>

                <th>Title-5</th>

                <th>Title-6</th>

                <th>Title-7</th>

                <th>Title-8</th>

                <th>Title-9</th>

                <th>Title-10</th>

                <th>Title-11</th>

                <th>Title-12</th>

                ......

            </tr>

        </thead>

        <tbody></tbody>

 </table>
Javascript:
<script type="text/javascript">

    $(function () {

        $('#myTable').dataTable({

            "bServerSide": true,

            "sAjaxSource": "/Home/TodaySO",

            "bPaginage": true,

            "sPaginationType": "full_numbers",

            "iDisplayLength": 5,

            "oLanguage": { "sUrl": "/Scripts/DataTable/dataTable_cn.txt" }//     

      // !
});//end table });//end ready() </script>
コントローラ:
var result = from f in filteredData.OrderBy(o => o.SalesOrder)

                .Skip(param.iDisplayStart)

                .Take(param.iDisplayLength)

                .ToList()

            select new[]{ f.Field-1, f.Field-2, f.Field-3, f.Field-4, f.Field-5, f.Field-6, f.Field-7, f.Field-8, f.Field-9, f.Field-10, f.Field-11, f.Field-12  
              ...... };
-----------ファイリングBug--------
配列の書式:
{"sEcho":"1","iTotalRecords":2210,"iTotalDisplayRecords":2210,

    "aaData":[

        ["3004582952","10  "],

        ["3004582952","100 "],

        ["3004582952","20  "],

        ["3004582952","30  "],

        ["3004582952","40  "]

    ]

}
第二の方法:jsにHtmlを設定する:
 <table id="myTable">

    <thead>

       <tr>

            <th>Title-1</th>

            <th>Title-2</th>

            <th>Title-3</th>

            <th>Title-4</th>

            <th>Title-5</th>

            <th>Title-6</th>

            <th>Title-7</th>

            <th>Title-8</th>

            <th>Title-9</th>

            <th>Title-10</th>

            <th>Title-11</th>

            <th>Title-12</th>

            ......

        </tr>

    </thead>

    <tbody></tbody>

</table>
Javascript:
<script type="text/javascript">

    $(function () {

        $('#myTable').dataTable({

            "bServerSide": true,

            "sAjaxSource": "/Home/TodaySO",

            "bPaginage": true,

            "sPaginationType": "full_numbers",

            "iDisplayLength": 5,

            "oLanguage": { "sUrl": "/Scripts/DataTable/dataTable_cn.txt" },//     

            "aoColumns": [ { "mData": "Field-1" }, { "mData": "Field-2" }, { "mData": "Field-3" }, { "mData": "Field-4" } , { "mData": "Field-5" } , { "mData": "Field-6" } , { "mData": "Field-7" } , { "mData": "Field-8" } , { "mData": "Field-9" } , { "mData": "Field-10" } , { "mData": "Field-11" } , { "mData": "Field-12" } ......

            ]

        });//end table

    });//end ready()

</script>
コントローラ:
 var result = from f in filteredData

                  .OrderBy(o => o.SalesOrder)

                  .Skip(param.iDisplayStart)

                  .Take(param.iDisplayLength)

               select f;
-----------ファイリングBug--------
Javascriptオブジェクトフォーマット:
{

    "sEcho":"1",

    "iTotalRecords":2210,

    "iTotalDisplayRecords":2210,

    "aaData":[

        {"SalesOrder":"3004582952","SalesOrderItem":"10  ","CustomerPO":"SEG131800",...},

        {"SalesOrder":"3004582952","SalesOrderItem":"100 ","CustomerPO":"SEG131801",...},

        {"SalesOrder":"3004582952","SalesOrderItem":"20  ","CustomerPO":"SEG131802",...},

        {"SalesOrder":"3004582952","SalesOrderItem":"30  ","CustomerPO":"SEG131803",...},

        {"SalesOrder":"3004582952","SalesOrderItem":"40  ","CustomerPO":"SEG131804",...}

    ]

}