プロジェクトに取り組んでいるとき、データを表示するためにページングを使用することがよくあります。実際、原理は非常に単純です。ページ (次/前) がクリックされるたびに、関連する JSON データを取得するためのリクエストがバックグラウンドに送信されます。ここでの例は、毎回、リクエストが 2 つのパラメーター (pageSize – 各ページに表示されるデータ、pageNo – 現在のページ番号) とともにバックグラウンドに渡されることを示しています。
HTML 関連コード:
<p id='demo' ng-app='myApp' ng-controller='myCtrl'> <table> <thead> <th>序号</th> <th>操作人</th> <th>类别</th> <th>电话</th> <th>金额</th> <th>操作时间</th> </thead> <tbody> <tr ng-repeat="item in items"> <td>{{$index+1}}</td> <td>{{item.operator}}</td> <td>{{item.type}}</td> <td>{{item.tell}}</td> <td>{{item.price}}</td> <td>{{item.operateTime}}</td> </tr> </tbody> </table> <p class="page"> <span class="nextPage" ng-click="nextPage()">下一页</span> <span class="prevPage" ng-click="lastPage()">上一页</span> <span>{{cur}}/{{totalPage}} 页 共 {{totalNum}} 条记录</span> </p> </p>
CSS コードは、投稿されないため、自分で追加してください。
JS コード:
var params={ pageSize:10, pageNo:1 };var curPage=1;var app = angular.module('myApp', []); app.controller('myCtrl', function($scope,$http) { init($scope,$http); })function search($http,$scope){ params.pageNo=pageNo; $http({ method: 'GET', url:后台接口地址, params:params }).then(function successCallback(response) { // 数据总条数 $scope.totalNum = response.data.totalNum; // 数据总页数 $scope.totalPage = response.data.totalPage; // 数据当前页 $scope.cur = curPage; // 列表详细数据 var content = response.data.contents; for(var i in content){ // 数据操作人 content[i].operator= content[i].operator; // 数据电话 content[i].tell= content[i].tell; // 数据类别 content[i].type = content[i].type; // 数据操作时间 content[i].operateTime = content[i].createTime; // 数据价格 content[i].price = content[i].price; } $scope.items = content; }, function errorCallback(response) { // 请求失败执行代码 if(response!=null) error(response) }); }function init($scope,$http){ search($http,$scope); $scope.nextPage=function(){ nextPage($http,$scope); }; $scope.lastPage=function(){ lastPage($http,$scope); }; }// 点击上一页function lastPage($http,$scope){ if(curPage>1){ curPage--; search($http,$scope); } }// 点击下一页function nextPage($http,$scope){ if(curPage<totalPage){ curPage++; search($http,$scope); } } **注意**1、如果在你的项目里有根据数据前面的序号来删除某条数据,建议看下这篇博文[Angular Js中$index的小心使用](http://blog.csdn.net/renfufei/article/details/43061877)2、如果你的项目后台传过来的数据没有经过处理是全部的数据可以参考这篇博文[Angular Js表格分页](http://www.cnblogs.com/smilecoder/p/6519833.html)
项目は、プロジェクトを実行するときにデータを表示するためにページをよく使用します。実際、原理は非常に単純です。(下/上) をクリックするたびに。 )、バックグラウンド リクエストにリクエストを送信して、関連する JSON データを取得します。ここで説明するのは、リクエストするたびに、2 つのパラメーター (pageSize – 各ページに表示されるデータ、pageNo – 現在のページ) がバックグラウンドに渡されることです。この記事では、関連するコンテンツを共有します。
HTML 関連コード:<p id='demo' ng-app='myApp' ng-controller='myCtrl'> <table> <thead> <th>序号</th> <th>操作人</th> <th>类别</th> <th>电话</th> <th>金额</th> <th>操作时间</th> </thead> <tbody> <tr ng-repeat="item in items"> <td>{{$index+1}}</td> <td>{{item.operator}}</td> <td>{{item.type}}</td> <td>{{item.tell}}</td> <td>{{item.price}}</td> <td>{{item.operateTime}}</td> </tr> </tbody> </table> <p class="page"> <span class="nextPage" ng-click="nextPage()">下一页</span> <span class="prevPage" ng-click="lastPage()">上一页</span> <span>{{cur}}/{{totalPage}} 页 共 {{totalNum}} 条记录</span> </p> </p>
var params={ pageSize:10, pageNo:1 };var curPage=1;var app = angular.module('myApp', []); app.controller('myCtrl', function($scope,$http) { init($scope,$http); })function search($http,$scope){ params.pageNo=pageNo; $http({ method: 'GET', url:后台接口地址, params:params }).then(function successCallback(response) { // 数据总条数 $scope.totalNum = response.data.totalNum; // 数据总页数 $scope.totalPage = response.data.totalPage; // 数据当前页 $scope.cur = curPage; // 列表详细数据 var content = response.data.contents; for(var i in content){ // 数据操作人 content[i].operator= content[i].operator; // 数据电话 content[i].tell= content[i].tell; // 数据类别 content[i].type = content[i].type; // 数据操作时间 content[i].operateTime = content[i].createTime; // 数据价格 content[i].price = content[i].price; } $scope.items = content; }, function errorCallback(response) { // 请求失败执行代码 if(response!=null) error(response) }); }function init($scope,$http){ search($http,$scope); $scope.nextPage=function(){ nextPage($http,$scope); }; $scope.lastPage=function(){ lastPage($http,$scope); }; }// 点击上一页function lastPage($http,$scope){ if(curPage>1){ curPage--; search($http,$scope); } }// 点击下一页function nextPage($http,$scope){ if(curPage<totalPage){ curPage++; search($http,$scope); } } **注意**1、如果在你的项目里有根据数据前面的序号来删除某条数据,建议看下这篇博文[Angular Js中$index的小心使用](http://blog.csdn.net/renfufei/article/details/43061877)2、如果你的项目后台传过来的数据没有经过处理是全部的数据可以参考这篇博文[Angular Js表格分页](http://www.cnblogs.com/smilecoder/p/6519833.html)
jQuery+Ajax+PHP+Mysql によるページネーションデータ表示例解説_jquery
以上がAngular Jsページング表示データの詳細例の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。