实例代码讲解jquery easyui动态tab页


Posted in Javascript onNovember 17, 2015

通过使用 jQuery EasyUI 可以很容易地添加 Tabs。您只需要调用 'add' 方法即可。

function addTab(title, href,icon){ 
  var tt = $('#tabs'); 
  if (tt.tabs('exists', title)){//如果tab已经存在,则选中并刷新该tab     
    tt.tabs('select', title); 
    refreshTab({tabTitle:title,url:href}); 
  } else { 
    if (href){ 
      var content = '<iframe scrolling="no" frameborder="0" src="'+href+'" style="width:100%;height:100%;"></iframe>'; 
    } else { 
      var content = '未实现'; 
    } 
    tt.tabs('add',{ 
      title:title, 
      closable:true, 
      content:content, 
      iconCls:icon||'icon-default' 
    }); 
  } 
} 
/**   
 * 刷新tab 
 * @cfg 
 *example: {tabTitle:'tabTitle',url:'refreshUrl'} 
 *如果tabTitle为空,则默认刷新当前选中的tab 
 *如果url为空,则默认以原来的url进行reload 
 */ 
function refreshTab(cfg){ 
  var refresh_tab = cfg.tabTitle?$('#tabs').tabs('getTab',cfg.tabTitle):$('#tabs').tabs('getSelected'); 
  if(refresh_tab && refresh_tab.find('iframe').length > 0){ 
  var _refresh_ifram = refresh_tab.find('iframe')[0]; 
  var refresh_url = cfg.url?cfg.url:_refresh_ifram.src; 
  //_refresh_ifram.src = refresh_url; 
  _refresh_ifram.contentWindow.location.href=refresh_url; 
  }

以上代码简单易懂,代码就是注释,有疑问欢迎给我留言。

ps: jQuery Easyui 的tabs插件有两种方式加载某个tab(标签页)上的内容:“href远程请求”和“content本地内容”。

两者特点:

href方式加载数据的特点:

被加载的页面只有body元素内部的内容才会被加载,也就是jQuery的ajax请求的只是html片段。
加载远程url时有遮罩效果,也就是“等待中……”效果,用户体验较好。
当加载的页面布局较为复杂,或者有较多的js脚本需要运行的时候,编码往往就需要谨慎了,容易出问题,后面会详细谈。

content方式加载数据的特点:

比较灵活,你可以在脚本里面拼写html代码,然后赋值给tab的content属性,不过这种写法会使得代码易读性变差。
可以把iframe赋给content,把一个iframe嵌入也就没有什么不能完成的了。
使用iframe会造成客户端js重复加载,浪费资源,比如说你主页面要引用easyui的库,你的iframe也要引用,浪费就产生了。

Javascript 相关文章推荐
xtree.js 代码
Mar 13 Javascript
用javascript实现点击链接弹出&quot;图片另存为&quot;而不是直接打开
Aug 15 Javascript
JavaScript onkeypress事件入门实例(按下或按住一个键盘按键)
Oct 17 Javascript
jquery滚动加载数据的方法
Mar 09 Javascript
jQuery中的AjaxSubmit使用讲解
Sep 25 Javascript
jQuery UI Grid 模态框中的表格实例代码
Apr 01 jQuery
jquery submit()不能提交表单的解决方法
Apr 24 jQuery
vue修改vue项目运行端口号的方法
Aug 04 Javascript
vue中axios处理http发送请求的示例(Post和get)
Oct 13 Javascript
浅谈vue中使用图片懒加载vue-lazyload插件详细指南
Oct 23 Javascript
React Native AsyncStorage本地存储工具类
Oct 24 Javascript
在Vue项目中取消ESLint代码检测的步骤讲解
Jan 27 Javascript
用JavaScript来美化HTML的select标签的下拉列表效果
Nov 17 #Javascript
基于Jquery easyui 选中特定的tab
Nov 17 #Javascript
jquery实现简单的表单验证
Nov 17 #Javascript
将JavaScript的jQuery库中表单转化为JSON对象的方法
Nov 17 #Javascript
基于jquery实现可定制的web在线富文本编辑器附源码下载
Nov 17 #Javascript
Jquery ajax 同步阻塞引起的UI线程阻塞问题
Nov 17 #Javascript
jquery判断密码强度的验证代码
Apr 22 #Javascript
You might like
晶体管单管来复再生式收音机
2021/03/02 无线电
PHP 判断变量类型实现代码
2009/10/23 PHP
PHP函数学习之PHP函数点评
2012/07/05 PHP
CentOS安装php v8js教程
2015/02/26 PHP
tp5(thinkPHP5)框架实现多数据库查询的方法
2019/01/10 PHP
Jquery 高亮显示文本中重要的关键字
2009/12/24 Javascript
一个jquery实现的不错的多行文字图片滚动效果
2014/09/28 Javascript
详解JavaScript中void语句的使用
2015/06/04 Javascript
javascript实现一个简单的弹出窗
2016/02/22 Javascript
省市联动效果的简单实现代码(推荐)
2016/06/06 Javascript
浅谈JavaScript中数组的增删改查
2016/06/20 Javascript
微信小程序 wxapp内容组件 icon详细介绍
2016/10/31 Javascript
简单实现jQuery上传图片显示预览功能
2020/06/29 jQuery
使用jQuery实现两个div中按钮互换位置的实例代码
2017/09/21 jQuery
JavaScript反射与依赖注入实例详解
2018/05/29 Javascript
微信小程序canvas.drawImage完全显示图片问题的解决
2018/11/30 Javascript
微信小程序按钮点击动画效果的实现
2019/09/04 Javascript
逐行分析鸿蒙系统的 JavaScript 框架(推荐)
2020/09/17 Javascript
[59:36]2018DOTA2亚洲邀请赛 4.3 突围赛 Secret vs VG 第二场
2018/04/04 DOTA
python实现向ppt文件里插入新幻灯片页面的方法
2015/04/28 Python
解决django前后端分离csrf验证的问题
2019/02/03 Python
关于python导入模块import与常见的模块详解
2019/08/28 Python
手把手教你Python yLab的绘制折线图的画法
2019/10/23 Python
Python hmac模块使用实例解析
2019/12/24 Python
东南亚排名第一的服务市场:kaodim
2019/03/28 全球购物
西班牙最好的在线购买葡萄酒的商店:Vinoseleccion
2019/10/30 全球购物
物业经理求职自我评价
2013/09/22 职场文书
剪彩仪式主持词
2014/03/19 职场文书
护理专业自荐书
2014/06/04 职场文书
房屋出租协议书范本(标准版)
2014/09/24 职场文书
校园学雷锋广播稿
2014/10/08 职场文书
军人离婚协议书样本
2014/10/21 职场文书
农村婚庆主持词
2015/06/29 职场文书
九不准学习心得体会
2016/01/23 职场文书
《社戏》教学反思
2016/02/22 职场文书
联想win10摄像头打不开怎么办?win10笔记本摄像头打不开解决办法
2022/04/08 数码科技