全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

angularjs使用directive实现分页组件的示例

闲来没事,分享下项目中自己写的分页组件。来不及了,直接上车。

效果:

输入框可任意输入,并会自动提交到该页

依赖项:

fontawesome,bootstrap

html:

<ul class="page clearfix">
  <li ng-hide="currentPage <= 1">
    <a href="" ng-click=" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" firstPage()">
      <i class="fa fa-step-backward"></i>
    </a>
    <a href="" ng-click=" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" prePage()">
      <i class="fa fa-play fa-flip-horizontal"></i>
    </a>
  </li>
  <li>
    <span>页码</span>
    <input type="text" ng-model="currentPage">/
    <span ng-bind="totalPage"></span>
  </li>
  <li ng-hide="currentPage >= totalPage">
    <a href="" ng-click=" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" nextPage()">
      <i class="fa fa-play"></i>
    </a>
    <a href="" ng-click=" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" lastPage()">
      <i class="fa fa-step-forward"></i>
    </a>
  </li>
</ul>

css:

/* 分页 */
.page {
  margin: 15px 0;
  padding: 0;
  float: right;
}
.page li {
  list-style: none;
  float: left;
  height: 30px;
  line-height: 30px;
}
.page li input {
  padding: 3px 5px;
  height: 100%;
  width: 50px;
  border: none;
  background-color: #EAEEF1;
  text-align: center;
  margin-right: 10px;
}
.page li span {
  margin-right: 15px;
}
.page li a {
  text-decoration: none;
  outline: none;
  margin-right: 15px;
}

directive:

App.directive('paging', function() { // 分页
  return {
    restrict: 'A',
    replace: true,
    scope: {
      totalPage: '=totalPage',
      currentPage: '=currentPage',
      getData: '&getData'
    },
    templateUrl: 'app/views/partials/paging.html',
    controller: function($scope) {

      $scope.firstPage = function() { $scope.currentPage = 1; }
      $scope.lastPage = function() { $scope.currentPage = $scope.totalPage; }
      $scope.prePage = function() { $scope.currentPage--; }
      $scope.nextPage = function() { $scope.currentPage++; }

      $scope.$watch('currentPage', function(newVal, oldVal) {
        if(newVal != oldVal && newVal) $scope.getData();
      })
    }
  };
});

参数:

  • totalPage: 总页数,
  • currentPage: 当前页,
  • getData: 点击分页所触发的函数

用法:

controller:

$scope.current_page = 1; // 当前页
$scope.getData = function() {
  $scope.param.page = $scope.current_page;
  ConnectApi.start('post', 'index/student/getschoolclasslist', $scope.param).then(function(response) { // 这个ConnectApi 你大可不必关心,这是我封装的http函数
    var data = ConnectApi.data({ res: response, _index: index });
    $scope.data = data.data;
    $scope.totalpage = data.data.total_page; // 服务器端返回的总页数
  }
}
$scope.getData(); // 获取数据的函数

html:

<div paging total-page="totalpage" current-page="current_page" get-data="getData()"></div>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# angularjs实现分页  # angularjs中实现分页  # angularjs  # directive分页  # Vue.js分页组件实现:diVuePagination的使用详解  # vuejs2.0实现分页组件使用$emit进行事件监听数据传递的方法  # Reactjs实现通用分页组件的实例代码  # 原生js编写基于面向对象的分页组件  # Vue.js实现一个自定义分页组件vue-paginaiton  # 使用vue.js制作分页组件  # 基于Vue.js的表格分页组件  # js多功能分页组件layPage使用方法详解  # 分享一个自己写的简单的javascript分页组件  # JavaScript分页组件使用方法详解  # 分页  # 当前页  # 这是我  # 大可不必  # 该页  # 大家多多  # 输入框  # 闲来  # 并会  # 来不及了  # 可任意  # flip  # horizontal  # type  # text  # span  # input  # fa  # firstPage  # nofollow 


相关文章: 北京网站制作网页,网站升级改版需要多久?  如何在Windows服务器上快速搭建网站?  建站主机是什么?如何选择适合的建站主机?  定制建站模板如何实现SEO优化与智能系统配置?18字教程  如何选择适配移动端的WAP自助建站平台?  专业商城网站制作公司有哪些,pi商城官网是哪个?  北京网站制作公司哪家好一点,北京租房网站有哪些?  建站之星备案流程有哪些注意事项?  如何在橙子建站中快速调整背景颜色?  如何制作公司的网站链接,公司想做一个网站,一般需要花多少钱?  香港服务器部署网站为何提示未备案?  建站主机选购指南:核心配置与性价比推荐解析  建站主机选购指南与交易推荐:核心配置解析  如何破解联通资金短缺导致的基站建设难题?  已有域名如何免费搭建网站?  javascript中对象的定义、使用以及对象和原型链操作小结  如何在万网ECS上快速搭建专属网站?  宝塔建站无法访问?如何排查配置与端口问题?  网站设计制作书签怎么做,怎样将网页添加到书签/主页书签/桌面?  b2c电商网站制作流程,b2c水平综合的电商平台?  如何在服务器上三步完成建站并提升流量?  已有域名能否直接搭建网站?  学生网站制作软件,一个12岁的学生写小说,应该去什么样的网站?  关于BootStrap modal 在IOS9中不能弹出的解决方法(IOS 9 bootstrap modal ios 9 noticework)  如何用y主机助手快速搭建网站?  建站之星安装模板失败:服务器环境不兼容?  定制建站流程步骤详解:一站式方案设计与开发指南  制作网页的网站有哪些,电脑上怎么做网页?  电商网站制作公司有哪些,1688网是什么意思?  猪八戒网站制作视频,开发一个猪八戒网站,大约需要多少?或者自己请程序员,需要什么程序员,多少程序员能完成?  C#如何在一个XML文件中查找并替换文本内容  如何在香港服务器上快速搭建免备案网站?  建站之星导航如何优化提升用户体验?  建站之星代理商如何保障技术支持与售后服务?  国美网站制作流程,国美电器蒸汽鍋怎么用官方网站?  建站主机服务器选购指南:轻量应用与VPS配置解析  php能控制zigbee模块吗_php通过串口与cc2530 zigbee通信【介绍】  宝塔面板创建网站无法访问?如何快速排查修复?  如何在阿里云完成域名注册与建站?  智能起名网站制作软件有哪些,制作logo的软件?  网站规划与制作是什么,电子商务网站系统规划的内容及步骤是什么?  html制作网站的步骤有哪些,iapp如何添加网页?  高防服务器租用指南:配置选择与快速部署攻略  建站之家VIP精选网站模板与SEO优化教程整合指南  建站主机服务器选型指南与性能优化方案解析  如何选择最佳自助建站系统?快速指南解析优劣  武汉外贸网站制作公司,现在武汉外贸前景怎么样啊?  手机钓鱼网站怎么制作视频,怎样拦截钓鱼网站。怎么办?  沈阳制作网站公司排名,沈阳装饰协会官方网站?  山东网站制作公司有哪些,山东大源集团官网? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。