DataTables:在Table HTML与Angular汇编后,如何使分页工作在DrawCallback之后进行编译



这是我的抽签函数:

"fnDrawCallback": function( oSettings ) {
            console.log("dt redrawn");
            var selector = $("#example_table");
            console.log(selector);
            function recompileForAngular() {
                angular.element(document).injector().invoke(['$compile', function ($compile) {
                    // Create a scope.
                    var $scope = angular.element(document.body).scope();
                    // Specify what it is we'll be compiling.
                    var to_compile = $(selector).html();
                    // Compile the tag, retrieving the compiled output.
                    var $compiled = $compile(to_compile)($scope);
                    // Ensure the scope and been signalled to digest our data.
                    $scope.$digest();
                    // Replace the compiled output to the page.
                    $(selector).html($compiled);
                }]);
            }
            function init(recompile) {
                recompile();
            }
            init(recompileForAngular);
        },

加载数据表时,这很好,但是单击另一个页面(例如第二页)时,该表HTML并未对从AJAX调用返回的新数据进行刷新。

似乎Angular正在编译从$("#example_table").html();获得的旧HTML。

完成渲染完成时捕获事件的方法是什么(我可以重新编译新的,新鲜渲染的HTML)?

更改选择器,针对桌子主体解决此问题。 var selector = $("#exampleTable tbody");

相关内容

  • 没有找到相关文章

最新更新