jquery.util.easyui.dialog
(function ($) {
var $parent = parent.$;
//获取弹出窗口数据集合
function getDialogs() {
var dialogs = $parent("#div_index_data").data("dialogs");
dialogs = dialogs || [];
if ($.util.isEmptyObjectOrNull(dialogs))
return [];
return dialogs;
}
//获取当前弹出窗口数据
function getCurrentDialog() {
var dialogs = getDialogs();
return dialogs[dialogs.length - 1] || {};
}
//获取当前弹出窗口Id
function getCurrentDialogId() {
return getCurrentDialog().id;
}
//添加弹出窗口数据,包括弹出窗口Id和jQuery对象
function addDialog(id) {
var data = getDialogs();
data.push({ id: id, caller: window });
$parent("#div_index_data").data("dialogs", data);
}
//移除当前弹出窗口数据
function removeCurrentDialog() {
var dialogs = getDialogs();
dialogs.pop();
}
//树形操作
$.easyui.dialog = function () {
return {
//添加弹出框
addDialog: function (id) {
addDialog(id);
return getCurrentDialog();
},
//获取原调用者window对象
getCaller: function () {
return getCurrentDialog().caller;
},
//获取原调用者jQuery对象
getCaller$: function () {
return getCurrentDialog().caller.$;
},
//获取弹出窗window对象
getCurrent: function () {
var dialogId = getCurrentDialogId();
return top.frames[dialogId + "_iframe"] ? (!top.frames[dialogId + "_iframe"].contentWindow ? top.frames[dialogId + "_iframe"] : top.frames[dialogId + "_iframe"].contentWindow) : top.contentWindow;
},
//获取弹出窗jQuery对象
getCurrent$: function () {
var dialogId = getCurrentDialogId();
return top.frames[dialogId + "_iframe"] ? (!top.frames[dialogId + "_iframe"].contentWindow ? top.frames[dialogId + "_iframe"].$ : top.frames[dialogId + "_iframe"].contentWindow.$) : top.contentWindow.$;
},
//打开弹出窗口
open: function (options) {
/// <summary>
/// 弹出模态窗,解决在Iframe中无法全屏遮罩,
/// 注意:仅支持url弹窗
/// </summary>
/// <param name="options" type="Object">
/// 1. title:标题
/// 2. url:网址
/// 3. buttons:显示在窗口底部的按钮区域div的id
/// 4. icon:图标class
/// 5. width:宽度
/// 6. height:高度
/// 7. onInit:初始化事件,返回false跳出执行
/// </param>
initOptions();
if (!options.onInit(options))
return;
var dialog = createDialow();
show();
addDialog(options.id);
//初始化参数
function initOptions() {
options = $.extend({
id: $.util.newGuid(""),
title: '',
url: '',
icon: 'icon-standard-common-window',
width: 600,
height: 360,
iframe: true,
closed: false,
maximizable: true,
resizable: true,
cache: false,
modal: true,
buttons: '',
onInit: function () {
return true;
},
closeCallback: function () { }
}, options || {});
}
//创建窗口div
function createDialow() {
if (options.iframe) {
return $parent("<div id='" + options.id + "' style='overflow:visible;'><iframe id='" + options.id + "_iframe' scrolling=\"auto\" frameborder=\"0\" style=\"width:100%;height:100%;\" src='" + options.url + "' ></iframe></div>").appendTo('body');
} else {
return $parent("<div id='" + options.id + "'></div>").appendTo('body');
}
}
//弹出窗口
function show() {
dialog.dialog({
title: options.title,
href: options.iframe ? "" : options.url,
width: options.width,
height: options.height,
closed: options.closed,
maximizable: options.maximizable,
resizable: options.resizable,
cache: options.cache,
modal: options.modal,
iconCls: options.icon,
buttons: options.buttons,
border: false,
onLoad: function () {
},
onClose: function () {
options.closeCallback();
$parent("#" + getCurrentDialogId()).dialog('destroy');
removeCurrentDialog();
}
});
}
},
openCommon: function (url, title, width, height, callBack) {
$.easyui.dialog.open({
title: title,
url: url,
width: width,
height: height,
buttons: [{
text: '确定',
iconCls: 'icon-standard-common-ok',
handler: function () {
callBack(getCurrentDialogId());
}
}, {
text: '取消',
iconCls: 'icon-standard-common-cancel',
handler: function () {
$.easyui.dialog.close();
}
}]
});
},
//关闭弹出窗口
close: function () {
var dialogId = getCurrentDialogId();
if (!dialogId)
return;
$parent('#' + dialogId).dialog('close');
},
//打开Tab页面
openTab: function (tabid, url, name, img) {
addDialog("tabs_iframe_" + tabid);
AddTabMenu(tabid, url, name, img, true, true, true);
},
//关闭当前Tab页面
closeTab: function () {
removeCurrentDialog();
ThisCloseTab();
}
}
}();
})(jQuery);
jquery.util.easyui.dialog的更多相关文章
- easyui.dialog.js
(function ($) { var $parent = parent.$; //获取弹出窗口数据集合 function getDialogs() { var dialogs = $parent(& ...
- Easyui dialog中嵌入iframe
如果easyui dialog的地址属性用href超链接,easyui 不会加载整个url页面,只会截取url目标页的body体间的html, 如果想加载把其他页面 加载进dialog的iframe中 ...
- iframe中的jquery ui modal dialog 覆盖父窗口
在iframe中 使用jquery ui dialog,弹出后可以覆盖父窗体 ///iframe中的jquery ui modal dialog 覆盖父窗口 function openDialog() ...
- easyui dialog 中嵌入html页面
最近使用easyui比较多,这个插件确实很好用.在使用时也遇到了大大小小的问题,好在都一一解决了. 记录一下今天遇到的问题. 目的:用easyui的dialog嵌入一个html页面(html中仍有要执 ...
- easyui dialog 中 panel-body 高度太小出现 滚动条 的原因
easyui dialog 中 panel-body 高度太小出现 滚动条 的原因: dialog 高度比 iframe 高度大79 就可以了 $.editcompanypersoninfo = fu ...
- Easyui dialog Y轴滚动条定位
使用Easyui dialog进行数据新增的时候,如果Y轴方向有滚动条,当关闭之前的时候,将滚动条拉到最下方,再次打开的时候,滚动条还是定位在最下方. 需求: 每次打开的时候dialog Y轴滚动条定 ...
- 窗口-EasyUI Window 窗口、EasyUI Dialog 对话框、EasyUI Messager 消息框
EasyUI Window 窗口 扩展自 $.fn.panel.defaults.通过 $.fn.window.defaults 重写默认的 defaults. 窗口(window)是一个浮动的.可拖 ...
- 熟练使用jquery ui / easyui的各种组件设计网页界面
熟练使用jquery ui / easyui的各种组件设计网页界面
- day14—jQuery UI 之dialog部件
转行学开发,代码100天——2018-03-30 今天主要展示jQuery UI 之dialog部件的用法, 参考文档:https://jqueryui.com/dialog/ 本文记录分享初始的引用 ...
随机推荐
- 开源日志技术log4j
老师的总结: 日志:除了能记录异常信息,还可以记录程序正常运行时的关键信息. 使用log4j来进行日志文件记录经典步骤: 001.在项目中创建一个lib文件夹,然后将下载好的jar包copy到该文件夹 ...
- JSon_零基础_005_将po(bean)对象转换为JSon格式的对象字符串,返回给界面
将po(bean)对象转换为JSon格式的对象字符串,返回给界面 导入jar包: 编写po(bean)类: package com.west.webcourse.po; /** * 第01步:编写be ...
- js 去除空格
var MAX_PERIOD = $('#MAX_PERIOD').val(); // 借款的最大期限 MAX_PERIOD=Trim(MAX_PERIOD,"g"); //带 ...
- 12.了解或熟悉 C, C++, .NET
挂起,暂不了解,不过C++略懂,.net虽不懂但是做过实际项目,有能力担当
- 使用sysprep克隆虚拟机
1.虚拟机安装windows2008 x64 r2 2.安装完毕后,运行”c:\windows\system32\sysprep\sysprep.exe” 3.选择”进入系统全新体验(OOBE),勾选 ...
- Mysql子查询、关联查询
mysql中update.delete.install尽量不要使用子查询 一.mysql查询的五种子句 where(条件查询).having(筛选).group by(分组).orde ...
- Hadoop之TaskAttemptContext类和TaskAttemptID类
先来看看TaskAttemptContext的类图 : Figure1:TaskAttemptContext类图 用户向Hadoop提交Job(作业),Job在JobTracker对象的控制下执行.J ...
- 161121、hibernate导致数据出错的两个地方
一.在查询出来的对象上直接设置属性(该属性配置了可以持久化,如果不是可持久化的就没有关系). 出错的代码:(查询用的不好也会导致数据更新哦) Pagination pagination = group ...
- 161010、在大型项目中组织CSS
编写CSS容易. 编写可维护的CSS难. 这句话你之前可能听过100次了. 原因是CSS中的一切都默认为全局的.如果你是一个C程序员你就知道全局变量不好.如果你是任何一种程序员,你都知道隔离和可组合的 ...
- PHP处理CSV表格文件的常用操作方法是怎么样呢
php来说,fgetcsv读入csv表格,返回一个数组,然后foreach输出成HTML的<table>,这步操作几行代码就能实现,非常简单.工作量主要还在于浏览器前端,建议你用jQuer ...