您好,登錄后才能下訂單哦!
如何正確事務使用AngularJs分頁插件?相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。
1.自由設定每頁顯示的條目;
2.可以手動輸入頁面,跳轉到指定的頁數。
html代碼
<div class="pagination-define p20 mt20" ng-hide="totalItems==0"> <select ng-model="perPageSize" ng-change="pageChanged({currentPage:currentPage,perPageSize:perPageSize})" > <option value=10 ng-selected="perPageSize==10">10</option> <option value=20>20</option> <option value=30>30</option> <option value=50>50</option> <option value=100>100</option> </select> <uib-pagination items-per-page="numPerPage" total-items="totalItems" ng-model="currentPage" ng-change="pageChanged({currentPage:currentPage,perPageSize:perPageSize})" max-size="5" class="pagination-sm" boundary-link-numbers="true" boundary-links="true" rotate="false" previous-text="?" next-text="?" first-text="«" last-text="»"></uib-pagination> <input type="text" ng-model="inputCurPage" min=1 cus-max-number ="{{maxPages}}" current-page="{{currentPage}}"> <button class="btn btn-info btn-30h" ng-click="pageChanged({currentPage:inputCurPage,perPageSize:perPageSize})" ng-disabled="inputCurPage==''||submitting">Go</button> </div>
css代碼
.pagination-define{ text-align: center } .pagination-define input, .pagination-define select { padding-left: 3px; height: 30px; vertical-align: top; border: 1px solid #ccc; border-radius: 4px; width: 50px; } .pagination { margin: 0; } .pagination-define .btn-30h { vertical-align: top; } .btn-30h { padding-top: 4px; padding-bottom: 4px; }
Javascript代碼
app.directive('cusMaxNumber', ['$timeout', function ($timeout) { return { restrict: 'EA', require: 'ngModel', scope: { maxNumber: '@cusMaxNumber', currentPage: '@currentPage' }, link: function (scope, element, attr, ctrl) { ctrl.$parsers.push(function (viewValue) { var maxNumber = parseInt(scope.maxNumber, 10); var curNumber = scope.currentPage; //當前頁數 var transformedInput = viewValue.replace(/[^0-9]/g, ''); if (transformedInput !== viewValue||parseInt(transformedInput,10)<1||parseInt(transformedInput,10)>maxNumber) { ctrl.$setViewValue(curNumber); ctrl.$render(); return curNumber; } return viewValue; }); } }; }]) .directive('cusPagination',[function(){ return { restrict: "E", templateUrl: 'views/template/pagination.html', scope: { numPerPage: "=numPerPage", totalItems: "=totalItems", currentPage: "=cusCurrentPage", perPageSize:"=perPageSize", inputCurPage:"=inputCurPage", maxPages:"=maxPages", pageChanged: "&pageChanged" }, replace: false }; }]);
看完上述內容,你們掌握如何正確事務使用AngularJs分頁插件的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。