jQuery UI Grid 模态框中的表格实例代码


Posted in jQuery onApril 01, 2017

在弹出的模态框中使用表格。

在某些情况下,特别是 bootstrap modal,可能会出现表格渲染宽度过小或有时显示不完全。会误认为是由于 bootstrap modal 的动画渲染导致表格渲染时的可用空间不如预期。可以通过调用handleWindowResize来纠正。动画渲染的时间不好确定,所以一般推荐使用$interval,在模态框打开后的5秒内每隔500ms循环调用。

从某种意义上说,这类似于自动调整大小的功能,但它只在模态框开启后的短时间内完成。

代码:

index.html

<!doctype html>
<html ng-app="app">
 <head>
 <script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.5.0/angular.js"></script>
 <script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.5.0/angular-touch.js"></script>
 <script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.5.0/angular-animate.js"></script>
 <script src="http://ui-grid.info/docs/grunt-scripts/csv.js"></script>
 <script src="http://ui-grid.info/docs/grunt-scripts/pdfmake.js"></script>
 <script src="http://ui-grid.info/docs/grunt-scripts/vfs_fonts.js"></script>
 <script src="/release/ui-grid.js"></script>
 <script src="/release/ui-grid.css"></script>
 <script src="app.js"></script>
 </head>
 <body>
 <div ng-controller="MainCtrl">
  <button id="showButton" class="btn btn-success" ng-click="showModal()">Show Modal</button>
 </div>
 </body>
</html>

mian.css

.grid {
 width: 300px;
 height: 250px;
}

app.js

var app = angular.module('app', ['ngTouch', 'ui.grid']);
app.controller('MainCtrl', ['$rootScope', '$scope', '$http', 'modal', '$interval', function ($rootScope, $scope, $http, modal, $interval) {
 var myModal = new modal();
 $scope.hideGrid = true;
 $rootScope.gridOptions = {
 onRegisterApi: function (gridApi) {
  $scope.gridApi = gridApi;
  // call resize every 500 ms for 5 s after modal finishes opening - usually only necessary on a bootstrap modal
  $interval( function() {
  $scope.gridApi.core.handleWindowResize();
  }, 500, 10);
  }
 };
 $http.get('/data/100.json')
 .success(function(data) {
  $rootScope.gridOptions.data = data;
 });
 $scope.showModal = function() {
 myModal.open();
 };
}]);
app.factory('modal', ['$compile', '$rootScope', function ($compile, $rootScope) {
 return function() {
 var elm;
 var modal = {
  open: function() {
  var html = '<div class="modal" ng-style="modalStyle">{{modalStyle}}<div class="modal-dialog"><div class="modal-content"><div class="modal-header"></div><div class="modal-body"><div id="grid1" ui-grid="gridOptions" class="grid"></div></div><div class="modal-footer"><button id="buttonClose" class="btn btn-primary" ng-click="close()">Close</button></div></div></div></div>';
  elm = angular.element(html);
  angular.element(document.body).prepend(elm);
  $rootScope.close = function() {
   modal.close();
  };
  $rootScope.modalStyle = {"display": "block"};
  $compile(elm)($rootScope);
  },
  close: function() {
  if (elm) {
   elm.remove();
  }
  }
 };
 return modal;
 };
}]);

Demo

jQuery UI Grid 模态框中的表格实例代码

以上所述是小编给大家介绍的jQuery UI Grid 模态框中的表格,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

jQuery 相关文章推荐
jQuery插件FusionCharts绘制的3D环饼图效果示例【附demo源码】
Apr 02 jQuery
简单实现jQuery弹幕效果
May 06 jQuery
jquery append与appendTo方法比较
May 24 jQuery
jQuery制作input提示内容(兼容IE8以上)
Jul 05 jQuery
jquery获取select选中值的文本,并赋值给另一个输入框的方法
Aug 21 jQuery
jQuery选择器之层次选择器用法实例分析
Feb 19 jQuery
jQuery使用$.extend(true,object1, object2);实现深拷贝对象的方法分析
Mar 06 jQuery
一文快速了解JQuery中的AJAX
May 31 jQuery
JQuery 实现文件下载的常用方法分析
Oct 29 jQuery
javascript/jquery实现点击触发事件的方法分析
Nov 11 jQuery
jQuery实现鼠标滑动切换图片
May 27 jQuery
jquery实现淡入淡出轮播图效果
Dec 13 jQuery
jQuery源码解读之extend()与工具方法、实例方法详解
Mar 30 #jQuery
jQuery实现Select下拉列表进行状态选择功能
Mar 30 #jQuery
基于jquery实现二级联动效果
Mar 30 #jQuery
jquery中关于bind()方法的使用技巧分享
Mar 30 #jQuery
如何编写jquery插件
Mar 29 #jQuery
jQuery日程管理控件glDatePicker用法详解
Mar 29 #jQuery
jQuery实现简单漂亮的Nav导航菜单效果
Mar 29 #jQuery
You might like
php 无法载入mysql扩展
2010/03/12 PHP
部署PHP项目应该注意的几点事项分享
2013/12/20 PHP
两种php去除二维数组的重复项方法
2015/11/04 PHP
php实现的三个常用加密解密功能函数示例
2017/11/06 PHP
用jQuery扩展自写的 UI导航
2010/01/13 Javascript
javascript中字符串拼接需注意的问题
2010/07/13 Javascript
javascript拓展DOM操作 prependChild insertAfert
2010/11/17 Javascript
jQuery中setTimeout的几种使用方法小结
2013/04/07 Javascript
Javascript中prototype属性实现给内置对象添加新的方法
2015/05/14 Javascript
跟我学习javascript的定时器
2015/11/19 Javascript
JQuery validate 验证一个单独的表单元素实例
2017/02/17 Javascript
前端框架学习总结之Angular、React与Vue的比较详解
2017/03/14 Javascript
nodejs 终端打印进度条实例代码
2017/04/22 NodeJs
基于jQuery实现图片推拉门动画效果的两种方法
2017/08/26 jQuery
vue-cli项目中使用Mockjs详解
2018/05/14 Javascript
javascript sort()对数组中的元素进行排序详解
2019/10/13 Javascript
解决vue v-for src 图片路径问题 404
2019/11/12 Javascript
Vue(定时器)解决mounted不能获取到data中的数据问题
2020/07/30 Javascript
详解vue中使用transition和animation的实例代码
2020/12/12 Vue.js
[44:50]2018DOTA2亚洲邀请赛 4.1 小组赛 A组 TNC vs VG
2018/04/02 DOTA
Tensorflow 利用tf.contrib.learn建立输入函数的方法
2018/02/08 Python
python 给DataFrame增加index行名和columns列名的实现方法
2018/06/08 Python
python logging模块书写日志以及日志分割详解
2019/07/22 Python
python求加权平均值的实例(附纯python写法)
2019/08/22 Python
简单的Python调度器Schedule详解
2019/08/30 Python
Python OpenCV读取显示视频的方法示例
2020/02/20 Python
Python用Jira库来操作Jira
2020/12/28 Python
大学生就业自我鉴定
2013/10/26 职场文书
外贸业务员的岗位职责
2013/11/23 职场文书
人力资源管理专业毕业生自荐书
2014/05/25 职场文书
我为党旗添光彩演讲稿
2014/09/13 职场文书
优秀党员申报材料
2014/12/18 职场文书
幼儿园小班个人工作总结
2015/02/12 职场文书
社区艾滋病宣传活动总结
2015/05/07 职场文书
房产销售员2015年终工作总结
2015/10/22 职场文书
详解盒子端CSS动画性能提升
2021/05/24 HTML / CSS