artDialog是一个比较靓丽好用的插件 现在需要用art.dialog.open 打开一个网页(其实是一个选择人员页面),用户选择了人员后,点击art界面下方的按钮提交,获取选择的人员信息(需要通过JS获取得到)

遇到的问题就是该页面其实是一个frameset里面frame的内嵌页面,artdialog文档没有这块的说明。经过研究,红色关键代码:

art.dialog.open('../CommDialog/SelectDialog.aspx?DialogType=User',
{
width: 850,
height: 550,
title: '请选择一个人员,选择完毕后点击最下方的[提交选择]按钮',
lock: true,
okVal:'提交选择',
ok: function () {
var iframe = this.iframe.contentWindow;
if (!iframe.document.body) {
alert('人员选择页面还未加载完毕')
return false;
};

var subFrame = iframe.frames["myframe"]; //iframe是父页面弹出层的iframe,然后打开的页面是一个frameset 通过frames属性找到对应的frame
var doc = subFrame.document || subFrame.contentDocument || subFrame.contentWindow.document; //兼容IE和CHROME
var gvObj = doc.getElementById("gvUserInfo"); //通过doc的方法访问到元素了

}

return true;
}
}, false);

posted on   犇牛牛  阅读(779)  评论(0)    收藏  举报
编辑推荐:
· 记一次 .NET某固高运动卡测试 卡慢分析
· 微服务架构学习与思考:微服务拆分的原则
· 记一次 .NET某云HIS系统 CPU爆高分析
· 如果单表数据量大,只能考虑分库分表吗?
· 一文彻底搞懂 MCP:AI 大模型的标准化工具箱
阅读排行:
· 7 个最近很火的开源项目「GitHub 热点速览」
· DeepSeekV3:写代码很强了
· 博客园2025新款「AI繁忙」系列T恤上架
· 记一次 .NET某固高运动卡测试 卡慢分析
· Visual Studio 2022 v17.13新版发布:强化稳定性和安全,助力 .NET 开发提
点击右上角即可分享
微信分享提示