首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何更改DataTables将在ASP.NET中处理的ajax响应?

如何更改DataTables将在ASP.NET中处理的ajax响应?
EN

Stack Overflow用户
提问于 2016-11-11 08:28:17
回答 2查看 789关注 0票数 0

您可能知道,ASP.NET使用d参数提供ajax响应。我试着用以下方法来改变这个:

代码语言:javascript
运行
复制
dataSrc: function (json) {
    return json.d.data;
}

但是当我运行它时,它会显示jquery.dataTables.js:4108 Uncaught TypeError: Cannot read property 'length' of undefined(…).,正如您在本文中所附的图片中所看到的那样。我检查了这一部分,并得出结论,dataSrc并没有真正改变所有的响应。

这就是我对DataTables的ajax选项所做的:

代码语言:javascript
运行
复制
dataTable: {
    ajax: {
        type: 'POST',
        url: window.location.href + '/GetData',
        contentType: 'application/json; charset=utf-8',
        dataType: 'json',
        dataSrc: function (json) {
            return json.d.data;
        },
        ..... //other options
}

那么,是否还有其他选项可以更改所有将由DataTables处理的响应?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-11-11 10:18:11

你能在dataSrc试试这个吗?此解决方案基于此link

代码语言:javascript
运行
复制
"dataSrc": function (data) {
    var json = $.parseJSON(data.d);

    var myData = {};
    myData.draw = parseInt(json.draw);
    myData.recordsTotal = parseInt(json.recordsTotal);
    myData.recordsFiltered = parseInt(json.recordsFiltered);
    myData.data = json.data;

    return myData.data;
 }
票数 3
EN

Stack Overflow用户

发布于 2016-11-11 08:45:33

问题是您没有解析响应。首先,将ajax调用分离,并在解析后将该响应分配给aaData(datatable支柱)。

并确保您必须指定要在表中显示的所有列,请参阅代码中的"aoColumns": [{ "mData": "YourColumnName1" }]。希望这能帮到你

代码语言:javascript
运行
复制
 var ResponseData = CallAjaxMethod(YourUrl, "");//This will make Ajax call and get response
    ResponseData = JSON.parse(ResponseData); //This will pars your response

//'#tblId' this is table id where you want to show your table
$('#tblId').DataTable({
        "bProcessing": true,
        "bDestroy": true,
        "bStateSave": true,
        "aaData": ResponseData,//Its your response 
        "aoColumns": [
            { "mData": "YourColumnName1" },
            ....
            { "mData": "YourColumnNamen },

        ]
    });
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40543943

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档