jquery数据表启用"搜索"没有记录

时间:2016-01-15 19:02:09

标签: jquery datatables

我的应用程序中有多个数据表。他们中的一些人有动态的" aoColumns"其中一些有正常的来源。在我启用搜索的其中一个数据表中,它在第一次加载时工作正常,但是如果我访问其他数据表,那么它将显示没有匹配的记录。请参阅屏幕截图了解详情。

 $.when(awx.data.USERS.manageusers(), awx.data.USERS.getLastLoginTimes())
    .done(function (data1, data2) {
        var data = $.Enumerable.From(data1[0]).Select(function (v) {
            var ll = arr = jQuery.grep(data2[0], function( a ) {
                return v.Email == a.Email
            });
            v["LastAccessDate"] = ll.length > 0 ? ll[0].LastAccessDateTimeUTC : null;
            return v;
        }).ToArray();

        var content = awx.util.applyTemplate("manageusers");
        $('#main-content').html(content);

        $('#manageusers_table').DataTable({
           data: data,               
           "aoColumns": [
            { "data": "name"},
            { "data": "Email" },
            { "data": "role"},
            { "data": "org"},
            { "data": "date" },
            { "data": "accDate" },
            { "data": "status" },
            { "data": "workingstatus"}
        });

enter image description here

2 个答案:

答案 0 :(得分:1)

我认为您不会刷新data对象,并且所有数据表都使用相同的数据。

尝试使用 ajax方法再次检索您的数据:

$('#manageusers_table').DataTable( {
                paging: true,
                ordering: true,
                info: true,
                bSort: true,
                bServerSide: true,
                sAjaxSource: '@Url.Action("ControllerName","ActionName")', //ASP.NET MVC
                bProcessing: true
} );

希望这有帮助。

答案 1 :(得分:0)

所以,这就是我最终如何解决它或者解决它的方法 将我的数据表分配给变量然后分配这两行。

     var dtable =   $('#manageusers_table').DataTable({...
        });
        $.fn.dataTableExt.afnFiltering.length = 0;
        dtable.fnDraw();