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实现jQuery-form.js实现异步上传文件
Apr 28 jQuery
jquery仿京东商品放大浏览页面
Jun 06 jQuery
jQuery Json数据格式排版高亮插件json-viewer.js使用方法详解
Jun 12 jQuery
详谈表单格式化插件jquery.serializeJSON
Jun 23 jQuery
关于jQuery.ajax()的jsonp碰上post详解
Jul 02 jQuery
jquery实现下拉菜单的手风琴效果
Jul 23 jQuery
jQuery选择器之属性过滤选择器详解
Sep 28 jQuery
Django中使用jquery的ajax进行数据交互的实例代码
Oct 15 jQuery
jquery ztree实现右键收藏功能
Nov 20 jQuery
jquery 通过ajax请求获取后台数据显示在表格上的方法
Aug 08 jQuery
jquery3和layui冲突导致使用layui.layer.full弹出全屏iframe窗口时高度152px问题
May 12 jQuery
jquery插件开发模式实例详解
Jul 20 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
一个取得文件扩展名的函数
2006/10/09 PHP
PHP判断文件是否存在、是否可读、目录是否存在的代码
2012/10/03 PHP
PHP函数addslashes和mysql_real_escape_string的区别
2014/04/22 PHP
ThinkPHP 整合Bootstrap Ajax分页样式
2016/12/23 PHP
JQuery 自定义CircleAnimation,Animate方法学习笔记
2011/07/10 Javascript
在页面中js获取光标/鼠标的坐标及光标的像素坐标
2013/11/11 Javascript
利用JS判断用户是否上网(连接网络)
2013/12/23 Javascript
node.js实现逐行读取文件内容的代码
2014/06/27 Javascript
Javascript中的迭代、归并方法详解
2016/06/14 Javascript
jQuery插件cxSelect多级联动下拉菜单实例解析
2016/06/24 Javascript
微信小程序 数据交互与渲染实例详解
2017/01/21 Javascript
vue项目优化之通过keep-alive数据缓存的方法
2017/12/11 Javascript
JavaScript中click和onclick本质区别与用法分析
2018/06/07 Javascript
vue 下列表侧滑操作实例代码详解
2018/07/24 Javascript
JavaScript闭包原理与用法实例分析
2018/08/10 Javascript
layui在form表单页面通过Validform加入简单验证的方法
2019/09/06 Javascript
[02:44]完美大师赛主赛事淘汰赛第二日观众采访
2017/11/24 DOTA
基于进程内通讯的python聊天室实现方法
2015/06/28 Python
Python实现PS滤镜特效之扇形变换效果示例
2018/01/26 Python
基于Python log 的正确打开方式
2018/04/28 Python
Tensorflow 查看变量的值方法
2018/06/14 Python
如何基于Python制作有道翻译小工具
2019/12/16 Python
Python sklearn中的.fit与.predict的用法说明
2020/06/28 Python
python将字典内容写入json文件的实例代码
2020/08/12 Python
通过css3的filter滤镜改变png图片的颜色的示例代码
2020/05/06 HTML / CSS
奥兰多迪士尼门票折扣:Undercover Tourist
2018/07/09 全球购物
盖尔斯工厂店:GUESS Factory
2020/01/21 全球购物
自主招生自荐书
2013/11/29 职场文书
公司离职证明范本
2014/01/13 职场文书
中年人生感言
2014/02/04 职场文书
2014年大学生党员评议表自我评价
2014/09/20 职场文书
2015年三年级班主任工作总结
2015/05/21 职场文书
导师鉴定意见
2015/06/05 职场文书
Vue + iView实现Excel上传功能的完整代码
2021/06/22 Vue.js
详解Redis的三种常用的缓存读写策略步骤
2022/05/06 Redis
Echarts如何重新渲染实例详解
2022/05/30 Javascript