Skip to content

Commit 8635e36

Browse files
committed
Pagination controls disappear after reloadData l-lin#549
1 parent 5fb1cae commit 8635e36

5 files changed

+24
-10
lines changed

dist/angular-datatables.js

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -411,14 +411,17 @@ function dtColumnDefBuilder(DTColumnBuilder) {
411411
}
412412
dtColumnDefBuilder.$inject = ['DTColumnBuilder'];
413413

414-
function dtLoadingTemplate($compile, DTDefaultOptions) {
414+
function dtLoadingTemplate($compile, DTDefaultOptions, DT_LOADING_CLASS) {
415415
return {
416416
compileHtml: function($scope) {
417-
return $compile(angular.element(DTDefaultOptions.loadingTemplate))($scope);
417+
return $compile(angular.element('<div class="' + DT_LOADING_CLASS + '">' + DTDefaultOptions.loadingTemplate + '</div>'))($scope);
418+
},
419+
isLoading: function(elem) {
420+
return elem.hasClass(DT_LOADING_CLASS);
418421
}
419422
};
420423
}
421-
dtLoadingTemplate.$inject = ['$compile', 'DTDefaultOptions'];
424+
dtLoadingTemplate.$inject = ['$compile', 'DTDefaultOptions', 'DT_LOADING_CLASS'];
422425

423426
'use strict';
424427

@@ -599,11 +602,12 @@ angular.module('datatables.options', [])
599602
// Set default columns (used when none are provided)
600603
aoColumns: []
601604
})
605+
.constant('DT_LOADING_CLASS', 'dt-loading')
602606
.service('DTDefaultOptions', dtDefaultOptions);
603607

604608
function dtDefaultOptions() {
605609
var options = {
606-
loadingTemplate: '<h3 class="dt-loading">Loading...</h3>',
610+
loadingTemplate: '<h3>Loading...</h3>',
607611
bootstrapOptions: {},
608612
setLoadingTemplate: setLoadingTemplate,
609613
setLanguageSource: setLanguageSource,
@@ -714,7 +718,10 @@ function dtRendererService(DTLoadingTemplate) {
714718

715719
function hideLoading($elem) {
716720
$elem.show();
717-
$elem.next().remove();
721+
var next = $elem.next();
722+
if (DTLoadingTemplate.isLoading(next)) {
723+
next.remove();
724+
}
718725
}
719726

720727
function renderDataTable($elem, options) {

dist/angular-datatables.min.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/angular-datatables.factory.js

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -268,10 +268,13 @@ function dtColumnDefBuilder(DTColumnBuilder) {
268268
};
269269
}
270270

271-
function dtLoadingTemplate($compile, DTDefaultOptions) {
271+
function dtLoadingTemplate($compile, DTDefaultOptions, DT_LOADING_CLASS) {
272272
return {
273273
compileHtml: function($scope) {
274-
return $compile(angular.element(DTDefaultOptions.loadingTemplate))($scope);
274+
return $compile(angular.element('<div class="' + DT_LOADING_CLASS + '">' + DTDefaultOptions.loadingTemplate + '</div>'))($scope);
275+
},
276+
isLoading: function(elem) {
277+
return elem.hasClass(DT_LOADING_CLASS);
275278
}
276279
};
277280
}

src/angular-datatables.options.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,11 +8,12 @@ angular.module('datatables.options', [])
88
// Set default columns (used when none are provided)
99
aoColumns: []
1010
})
11+
.constant('DT_LOADING_CLASS', 'dt-loading')
1112
.service('DTDefaultOptions', dtDefaultOptions);
1213

1314
function dtDefaultOptions() {
1415
var options = {
15-
loadingTemplate: '<h3 class="dt-loading">Loading...</h3>',
16+
loadingTemplate: '<h3>Loading...</h3>',
1617
bootstrapOptions: {},
1718
setLoadingTemplate: setLoadingTemplate,
1819
setLanguageSource: setLanguageSource,

src/angular-datatables.renderer.js

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,10 @@ function dtRendererService(DTLoadingTemplate) {
3131

3232
function hideLoading($elem) {
3333
$elem.show();
34-
$elem.next().remove();
34+
var next = $elem.next();
35+
if (DTLoadingTemplate.isLoading(next)) {
36+
next.remove();
37+
}
3538
}
3639

3740
function renderDataTable($elem, options) {

0 commit comments

Comments
 (0)