diff options
author | isteven <ignatius.steven@gmail.com> | 2014-06-13 23:12:12 +0800 |
---|---|---|
committer | isteven <ignatius.steven@gmail.com> | 2014-06-13 23:12:12 +0800 |
commit | 5dfabb5007eedd3fc38c747fb9f2d9caae044806 (patch) | |
tree | 49cb8fcbc8253f9242dd71597d48a085c6442ca2 /angular-multi-select.js | |
parent | fbbb1c4e45121132e921c252927eb27a6e32d3bf (diff) | |
parent | eec2666a3d8b361a409d0a41be5ea28e80b2cfac (diff) | |
download | angular-multi-select-5dfabb5007eedd3fc38c747fb9f2d9caae044806.zip angular-multi-select-5dfabb5007eedd3fc38c747fb9f2d9caae044806.tar.gz angular-multi-select-5dfabb5007eedd3fc38c747fb9f2d9caae044806.tar.bz2 |
Merge branch 'master' of https://github.com/isteven/angular-multi-selectv1.2.0
Diffstat (limited to 'angular-multi-select.js')
-rw-r--r-- | angular-multi-select.js | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/angular-multi-select.js b/angular-multi-select.js index 6117d63..9153ab0 100644 --- a/angular-multi-select.js +++ b/angular-multi-select.js @@ -49,6 +49,7 @@ angular.module( 'multi-select', ['ng'] ).directive( 'multiSelect' , [ '$sce', '$ tickProperty : '@', disableProperty : '@', orientation : '@', + defaultLabel : '@', maxLabels : '@', isDisabled : '=', directiveId : '@', @@ -179,11 +180,11 @@ angular.module( 'multi-select', ['ng'] ).directive( 'multiSelect' , [ '$sce', '$ // Write label... if ( $scope.selectedItems.length === 0 ) { - $scope.varButtonLabel = 'None selected'; + $scope.varButtonLabel = ($scope.defaultLabel)? $scope.defaultLabel : 'None selected'; } - else { + else { var tempMaxLabels = $scope.selectedItems.length; - if ( typeof $scope.maxLabels !== 'undefined' && $scope.maxLabels !== '' && $scope.maxLabels !== "0" ) { + if ( typeof $scope.maxLabels !== 'undefined' && $scope.maxLabels !== '' ) { tempMaxLabels = $scope.maxLabels; } @@ -202,11 +203,15 @@ angular.module( 'multi-select', ['ng'] ).directive( 'multiSelect' , [ '$sce', '$ } ctr++; } - }); + }); if ( $scope.more === true ) { - $scope.varButtonLabel += ', ... (Total: ' + $scope.selectedItems.length + ')'; - }$scope + if (tempMaxLabels > 0) { + $scope.varButtonLabel += ', ... '; + } + + $scope.varButtonLabel += '(Total: ' + $scope.selectedItems.length + ')'; + } } $scope.varButtonLabel = $sce.trustAsHtml( $scope.varButtonLabel + '<span class="multiSelect caret"></span>' ); } @@ -444,7 +449,7 @@ angular.module( 'multi-select', ['ng'] ).directive( 'multiSelect' , [ '$sce', '$ if ( e.type === 'click' || e.type === 'touchend' && $scope.scrolled === false ) { var checkboxes = document.querySelectorAll( '.checkboxLayer' ); - if ( e.target.className.indexOf( 'multiSelect' ) === -1 ) { + if ( e.target.className.indexOf === undefined || e.target.className.indexOf( 'multiSelect' )) { for( i=0; i < checkboxes.length; i++ ) { checkboxes[i].className = 'multiSelect checkboxLayer hide'; } |