怎样访问用iframe嵌入的asp页面

litie1983 2007-01-11 04:13:01
我在jsp中用iframe嵌入一个asp页面,在javascript中想用window.frames(iframe).document访问嵌入的asp中的内容,IE提示拒绝访问,嵌入html页面就可以,要怎样做才能访问嵌入的asp呢?求教高手,急需解决
...全文
943 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
cloudgamer 2007-01-28
  • 打赏
  • 举报
回复
不能
fusoft 2007-01-14
  • 打赏
  • 举报
回复
IE的安全设置不允许跨域访问,用AJAX解决吧
Dogfish 2007-01-14
  • 打赏
  • 举报
回复
不同的站点是不能访问的。安全问题。
litie1983 2007-01-11
  • 打赏
  • 举报
回复
简单代码如下:
if ( window.frames != null ) {
for ( i = 0; i< window.frames.length; i++ )
window.alert ("子窗口 " +i+ " 的名称为 "+window.frames(i).name);
}

<Iframe style="display:none" src="http://www.yhnkzq.com:8080/register2.asp" width="100%" height="60" scrolling="auto" allowtransprency="true"
frameborder="0" name="main3" id="main3">
</iframe>

<Iframe style="display:none" src="test.html" width="100%" height="60" scrolling="auto" allowtransprency="true"
frameborder="0" name="main" id="main">
</iframe>


alert(window.frames(i).name );
能显示 main ,而不能显示main3 拒绝访问


1、为ScriptManager添加脚本引用,不从ScriptResource.axd中加载MicrosoftAjax.js脚本,而是直接加载 <asp:ScriptManager ID="ScriptManager1" runat="server" EnablePageMethods="true"> <asp:ScriptReference Name="MicrosoftAjax.js" ScriptMode="auto" Path="~/ScriptLibrary/System.Web.Extensions/1.0.61025.0/MicrosoftAjax.js" /> asp:ScriptManager> 2、修改MicrosoftAjax.debug.js 删除 switch(Sys.Browser.agent) { case Sys.Browser.InternetExplorer:与 case Sys.Browser.Safari: 之间的脚本,替换为如下脚本: Sys.UI.DomElement.getLocation = function(element) { if (element.self || element.nodeType === 9) return new Sys.UI.Point(0,0); var clientRect = element.getBoundingClientRect(); if (!clientRect) { return new Sys.UI.Point(0,0); } var ownerDocument = element.document.documentElement; var offsetX = clientRect.left - 2 + ownerDocument.scrollLeft, offsetY = clientRect.top - 2 + ownerDocument.scrollTop; try { var f = element.ownerDocument.parentWindow.frameElement || null; if (f) { var offset = 2 - (f.frameBorder || 1) * 2; offsetX += offset; offsetY += offset; } } catch(ex) { } return new Sys.UI.Point(offsetX, offsetY); } break; 3、修改MicrosoftAjax.js 删除 switch(Sys.Browser.agent){case Sys.Browser.InternetExplorer:与 case Sys.Browser.Safari: 之间的脚本,替换为如下脚本: Sys.UI.DomElement.getLocation=function(a){if(a.self||a.nodeType===9)return new Sys.UI.Point(0,0);var b=a.getBoundingClientRect();if(!b)return new Sys.UI.Point(0,0);var c=a.document.documentElement,d=b.left-2+c.scrollLeft,e=b.top-2+c.scrollTop;try{var g=a.ownerDocument.parentWindow.frameElement||null;if(g){var f=2-(g.frameBorder||1)*2;d+=f;e+=f}}catch(h){}return new Sys.UI.Point(d,e)};break;

879

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 ColdFusion
社区管理员
  • ColdFusion社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧