服务器端数据从jquery数据表中的C#加载

时间:2014-07-08 06:18:26

标签: javascript jquery jqgrid jquery-datatables

您好我已经成功实现了jquery数据表服务器端调用,但我无法在html视图中加载数据 它只是说处理 这是我的Js代码

 $('#internetTable').dataTable({
    'bProcessing': true,
    'bServerSide': true,
    'sAjaxSource': 'api/values/GetInternetSales'
    "aoColumns": [
        { "mData": "Calls" },
        { "mData": "LevelOneOperators" },
        { "mData": "LevelTwoOperators" },
        { "mData": "Issueraised" },
        { "mData": "SalesDate" },
        { "mData": "AutomaticResponses" }

    ]
});

这是html代码

<table id="internetTable" class="table table-bordered table-hover">
            <thead>
                <tr>
                    <th >Date</th>
                    <th>Issue Raised</th>
                    <th>Level One Operators</th>
                    <th >Level Two Operators</th>
                    <th>Automatic Responses</th>
                    <th>Calls</th>
                </tr>
            </thead>
        </table>

从服务器获得的响应是​​

{"sEcho":"2","iTotalRecords":10,"iDisplayStart":1,"iDisplayEnd":1,"iDisplayLength":10,"iTotalDisplayRecords":100,"InternetDataList":[{"Calls":"320","LevelOneOperators":"1","LevelTwoOperators":"7","Issueraised":"1","SalesDate":"2010-11-25T00:00:00","AutomaticResponses":235}]}

现在,只想问一下我需要做什么修改JS代码才能在表中解析它,因为我已经搜索了很多但是无法得到任何解决方案。

1 个答案:

答案 0 :(得分:0)

得到答案我需要在js中添加以下代码:

$('#internetTable').dataTable({
    'bProcessing': true,
    'bServerSide': true,
    "sServerMethod": "GET",
    // to enable Pagination
    "sPaginationType": "full_numbers",
    'sAjaxSource': 'api/values/GetInternetSales',
    "sAjaxDataProp": "InternetDataList",
    "aoColumnDefs": [{
        "mData": "InternetDataList"
    }],
    "aoColumns": [
        { "mData": "Calls" },
        { "mData": "LevelOneOperators" },
        { "mData": "LevelTwoOperators" },
        { "mData": "Issueraised" },

        { "mData": "AutomaticResponses" },
               { "mData": "SalesDate" }


    ]
});

因为,这里sAjaxDataProp是你的数据名称,在我的例子中是InternetDataList,默认是aadata