Tabs 右键菜单功能实现

前端

   <div id="tabs" class="easyui-tabs" fit="true" border="false"  data-options="tools:'#tab-tools'">
</div> <div id="tab-tools">
<a href="javascript:void(0)" class="easyui-linkbutton" data-options="plain:true,iconCls:'icon-reload'" onclick="reload()"></a>
<a href="javascript:void(0)" class="easyui-linkbutton" data-options="plain:true,iconCls:'icon-delete'" onclick="closecur()"></a>
</div> <div id="mm" class="easyui-menu" style="width:150px;">
<div data-options="iconCls:'icon-reload'" id="refresh">刷新</div>
<div class="menu-sep"></div>
<div data-options="iconCls:'icon-delete0'" id="closecur">关闭当前</div>
<div data-options="iconCls:'icon-delete0'" id="closeall">全部关闭</div>
<div data-options="iconCls:'icon-delete0'" id="closeother">除此之外全部关闭</div>
<div class="menu-sep"></div>
<div data-options="iconCls:'icon-delete0'" id="closeright">当前页右侧全部关闭</div>
<div data-options="iconCls:'icon-delete0'" id="closeleft">当前页左侧全部关闭</div>
</div>

脚本

$(function () {

    $(".tabs-header").bind('contextmenu', function (e) {
e.preventDefault();
$('#mm').menu('show', {
left: e.pageX,
top: e.pageY
});
}); //刷新
$("#refresh").bind("click", function () {
reload();
}) //关闭当前标签页
$("#closecur").bind("click", function () {
closecur();
});
//关闭所有标签页
$("#closeall").bind("click", function () { var tablist = $('#tabs').tabs('tabs');
for (var i = tablist.length - 1; i >= 0; i--) {
$('#tabs').tabs('close', i);
}
});
//关闭非当前标签页(先关闭右侧,再关闭左侧)
$("#closeother").bind("click", function () {
var tablist = $('#tabs').tabs('tabs');
var tab = $('#tabs').tabs('getSelected');
var index = $('#tabs').tabs('getTabIndex', tab);
for (var i = tablist.length - 1; i > index; i--) {
$('#tabs').tabs('close', i);
}
var num = index - 1;
for (var i = num; i >= 0; i--) {
$('#tabs').tabs('close', 0);
}
});
//关闭当前标签页右侧标签页
$("#closeright").bind("click", function () {
var tablist = $('#tabs').tabs('tabs');
var tab = $('#tabs').tabs('getSelected');
var index = $('#tabs').tabs('getTabIndex', tab); for (var i = tablist.length - 1; i > index; i--) {
$('#tabs').tabs('close', i);
}
});
//关闭当前标签页左侧标签页
$("#closeleft").bind("click", function () {
var tab = $('#tabs').tabs('getSelected');
var index = $('#tabs').tabs('getTabIndex', tab);
var num = index - 1;
for (var i = 0; i <= num; i++) {
$('#tabs').tabs('close', 0);
}
}); }); function reload() {
var currentTab = $('#tabs').tabs('getSelected');
var iframe = $(currentTab.panel('options').content);
var src = iframe.attr('src');
$('#tabs').tabs('update', {
tab: currentTab,
options: {
content: '<iframe scrolling="auto" frameborder="0" style="width:100%;height:100%;" src="' + src + '" ></iframe>'
}
})
} function closecur() { var tab = $('#tabs').tabs('getSelected');
var index = $('#tabs').tabs('getTabIndex', tab);
$('#tabs').tabs('close', index);
}

MVC4 +EasyUI Tabs 使用的更多相关文章

  1. 基于MVC4+EasyUI的Web开发框架形成之旅--界面控件的使用

    在前面介绍了两篇关于我的基于MVC4+EasyUI技术的Web开发框架的随笔,本篇继续介绍其中界面部分的一些使用知识,包括控件的赋值.取值.清空,以及相关的使用. 我们知道,一般Web界面包括的界面控 ...

  2. 转--基于MVC4+EasyUI的Web开发框架形成之旅--界面控件的使用

    原文  http://www.cnblogs.com/wuhuacong/p/3317223.html 基于MVC4+EasyUI的Web开发框架形成之旅--界面控件的使用 在前面介绍了两篇关于我的基 ...

  3. (转)基于MVC4+EasyUI的Web开发框架形成之旅--界面控件的使用

    原文地址:http://www.cnblogs.com/wuhuacong/p/3317223.html 在前面介绍了两篇关于我的基于MVC4+EasyUI技术的Web开发框架的随笔,本篇继续介绍其中 ...

  4. 基于MVC4+EasyUI的Web开发框架经验总结(16)--使用云打印控件C-Lodop打印页面或套打报关运单信息

    在最新的MVC4+EasyUI的Web开发框架里面,我整合了关于网购运单处理的一个模块,其中整合了客户导单.运单合并.到货扫描.扣仓.出仓.查询等各个模块的操作,里面涉及到一些运单套打的操作,不过由于 ...

  5. ASP.NET MVC+EF框架+EasyUI实现权限管理系列(23)-设置角色遗留问题和为权限设置角色以及EasyUI Tabs的使用

    ASP.NET MVC+EF框架+EasyUI实现权限管系列 (开篇)   (1):框架搭建    (2):数据库访问层的设计Demo    (3):面向接口编程   (4 ):业务逻辑层的封装    ...

  6. EF6 CodeFirst+Repository+Ninject+MVC4+EasyUI实践(一)

    前言 本系列源自对EF6 CodeFirst的探索,但后来发现在自己项目中构建的时候遇到了一些问题以及一些解决方法,因此想作为一个系列写下来. 本系列并不是教你怎么做架构设计,但可以参照一下里面的方法 ...

  7. 基于MVC4+EasyUI的Web开发框架经验总结

    http://www.cnblogs.com/wuhuacong/p/4093778.html 在很多Web系统中,一般都可能提供一些图标的选择,方便配置按钮,菜单等界面元素的图 标,从而是Web系统 ...

  8. 基于MVC4+EasyUI的Web开发框架形成之旅--附件上传组件uploadify的使用

    大概一年前,我还在用Asp.NET开发一些行业管理系统的时候,就曾经使用这个组件作为文件的上传操作,在随笔<Web开发中的文件上传组件uploadify的使用>中可以看到,Asp.NET中 ...

  9. 基于MVC4+EasyUI的Web开发框架经验总结(15)--在MVC项目中使用RDLC报表

    RDLC是一个不错的报表,有着比较不错的设计模式和展现效果,在我的Winform开发里面,使用RDLC也是一个比较方便操作,如可以参考文章<DevExpress的XtraReport和微软RDL ...

随机推荐

  1. 基于vue2.0的分页组件开发

    今天安排的任务是写基于vue2.0的分页组件,好吧,我一开始是觉得超级简单的,但是越写越写不出来,写的最后乱七八糟的都不知道下句该写什么了,所以重新捋了思路,小结一下- 首先写组件需要考虑: 要从父组 ...

  2. Android Handler 最佳的理解资料

  3. block中如何避免循环引用

    使用 weak–strong dance 技术 block 可以直接引用 self,但是要非常小心地在 block 中引用 self.因为在 block 引用 self,可能会导致循环引用.如下例所示 ...

  4. Meta http-equiv的属性详解 来自wanglehui

    Meta http-equiv 语法标签格式:<meta http-equiv="参数" content="参数值"> 1."过期时间&q ...

  5. MySQL, 创建一个只读用户和一个所有权限用户

    安装pasa需要配置mysql.基本知识学习一下 http://www.cnblogs.com/mr-wid/archive/2013/05/09/3068229.html MySQL 为关系型数据库 ...

  6. 基于redis排行榜的实战总结

    前言: 之前写过排行榜的设计和实现, 不同需求其背后的架构和设计模型也不一样. 平台差异, 有的立足于游戏平台, 为多个应用提供服务, 有的仅限于单个游戏.排名范围差异, 有的面向全局排名, 有的只做 ...

  7. Android中ExpandableListView的使用

    ExpandableListView是Android中可以实现下拉list的一个控件,具体的实现方法如下: 首先:在layout的xml文件中定义一个ExpandableListView < L ...

  8. APP邂逅即时通讯云,让你的手机APP聊起来

     #推荐活动# #线下沙龙# 明天下午在IC咖啡 —— <APP邂逅即时通讯云,让你的手机APP聊起来>, http://url.cn/Y8sYo5 

  9. node.js Stream Buffer FsPromise

    Stream: 类似这样:a.pipe(b).pipe(c); 我想写一个b.所以: var rs=new (require('stream').Readable)(); var ws=new (re ...

  10. eclipse连接mysql,插入数据时乱码

    问题:如果eclipse中项目的编码方式为utf-8 插入数据后,在数据库中查看后,汉字出现乱码情况 解决方法: 1.在获取连接的时候将conn = DriverManager.getConnecti ...