ajax - Angular 6数据表服务器端ajax请求不起作用

标签 ajax angular datatables-1.10 angular-datatables

我正在使用 Angular 数据表(1.10.19)。 ref this for server side angular way

我用 C# 编写了 Web api 来获取所需格式的数据。 通过以下 dtoptions,服务器端工作正常。

dtOptions = {
                    pagingType: 'full_numbers',
                    pageLength: 10,
                    processing: true,
                    serverSide: true,
                    orderCellsTop: true,
                    ajax: (dataTablesParameters: any, callback) => {

                        this.mainpageservice.GetPaginatedData(this.menuID, this.UserName, dataTablesParameters)
                            .subscribe(resp => {
                                this.Module = resp.data;
                                console.log('serverside', this.Module);
                                callback({
                                    recordsTotal: resp.recordsTotal,
                                    recordsFiltered: resp.recordsFiltered,
                                    data: [],
                                });
                            });
                    },

现在,我想使用服务器端 Angular 方式数据表显示多个表。所以为了实现这一点,我使用: for multiple datatables

如文档所述,我创建了一个返回数据表设置的函数。但这里ajax调用不起作用。

任何人都可以建议我哪里做错了吗?

    private buildDtOptions(menu: number, Username: string): DataTables.Settings  {
    alert('call');
    return {
        pagingType: 'full_numbers',
        pageLength: 10,
        processing: true,
        serverSide: true,
        orderCellsTop: true,
        ajax: (dataTablesParameters: any, callback) => {
            console.log(dataTablesParameters);
            this.mainpageservice.GetPaginatedData(menu, Username, dataTablesParameters).subscribe(resp => {
                    this.Module = resp.data;
                    console.log('serverside', this.Module);
                    callback({
                        recordsTotal: resp.recordsTotal,
                        recordsFiltered: resp.recordsFiltered,
                        data: [],
                    });
                });
        }

    };
}

最佳答案

不确定您是否遇到了与我相同的问题,但是当我从“Angular Way”转向“服务器端 Angular way”时,我忘记删除 dtTrigger 来自标记的引用。当我从表标签中删除 [dtTrigger]="dtTrigger" 后,我的世界一切都很好。

关于ajax - Angular 6数据表服务器端ajax请求不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54825997/

相关文章:

javascript - 如果需要,ajaxForm 重新提交

javascript - AJAX Post 缺少变量

html - OnChange typescript 输入

unit-testing - 使用核心注入(inject)器的 Angular2 2.0.1 组件单元测试

javascript - 数据表中列的自定义(组)排序

javascript - 尝试在 JavaScript 中从 Azure 表存储获取值时出错

javascript - AJAX在表单提交上上传图像

javascript - Angular Cli Webpack,如何添加或捆绑外部 js 文件?

jquery - 如何将 Datatables.net colvisGroup 绑定(bind)到外部按钮?

datatables - jQuery dataTables - 如果不存在使用 API .any() 检查并添加新行