`
kefeng
  • 浏览: 15401 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

解决父类加载iframe,src参数过大导致加载失败

 
阅读更多
<iframe src="*******.do?param=****" id="leftFrame" name="leftFrame" frameborder="0"></iframe>


或者是使用js加载src:


var params = "?pk_id="+pk_id;


var frameLeftSrc = "<%=path %>/****/****.do"+params;


$('#leftFrame').attr("src",frameLeftSrc);


(先说明一下,此处只是以一个参数为例,实际可能会有多个参数。我们继续)


上面两种写法,都可以实现iframe的加载,我们可能会以为没问题,很正确。其实上面的写法的确是没有太大的问题,对于参数的值不长的时候,注意是参数的值的长度,不是参数的多少。比如说,我要向这个iframe中传递个参数,参数名叫pk_id,值是由主页面或者其他页面返回的一长串的主键拼接起来的值,起码3000个字符以上,这个时候我们再用这个方法访问就有问题了。因为这种url方法是通过get进行提交的,参数的长度是有限制的。


那么对于这种大数据传输的时候怎么办呢,我目前想到的就有两种(大家有什么更好的提议尽管提,相互交流,相互提高):


一、仍旧用这个种方式传递,但是参数的值不要过长,前提是不长的参数值可以通过关联查询到你想要的长的参数值,这样iframe接收到这个不长的参数值之后,你再想办法获得在iframe子页面中获得你想要的长的参数值。(可以用,但不建议,因为需要个前提)


二、在主页面采用以下方法,进行加载iframe页面即可:


主页面:<iframe src="about:blank" id="leftFrame" name="leftFrame"frameborder="0">


js:


var url="<%=path %>/pubitem/toChoosePubItemLeft.do"; //定义iframe页面的form表单的action


//定义form表单
var html1='<form id="queryForm" name="queryForm" method="post" target="_self" action="'+url+'">'+
'<input type="hidden" id="pk_id" name="pk_id" value="'+pk_id+'"/>'+ //pk_id是一个长度超过3000字符的值
'</form>';
document.getElementById('leftFrame').contentWindow.document.write(html1);//将表单写入iframe中
document.getElementById('leftFrame').contentWindow.document.getElementById('queryForm').submit();//执行iframe中表单的提交


将以上方法封装到一个方法里面,然后主页面加载的时候调用这个方法,就会将主页面的大数据传递给iframe页面了。

版权声明:本文为博主原创文章,未经博主允许不得转载。

分享到:
评论

相关推荐

    JS加载iFrame出现空白问题的解决办法

    在使用IE6浏览器开发过程中出现各种奇葩问题,...iframe name=frames id=iframeID src=/&gt; setTimeout(document.frames['+iframeID+'].location.href='+iurls+';,0); //或 setTimeout(document.frames['+iframeID+']

    iframe弹出框遮罩父类页面

    iframe弹出框遮罩父类页面,进去之后直接打开demo里面的layout.html 页面看效果,然后查看代码;才方法不需要将子类的js 及弹出框的代码写在父类里面,依旧是写在子类页面里面

    html 网页加载

    &lt;iframe src="show.asp" frameBorder="0" width="500" scrolling="no" height="230"&gt;&lt;/iframe&gt;

    js获取控制iframe中iframe的src

    js控制/获取a.html中iframe加载的b.html中的iframe,很多人都以为getElementById可以直接获取,其实不行的,以上代码就解决了这个问题,js控制iframe加载页面的iframe,不过测试只在IE和火狐通过,谷歌不行,其他自...

    iframe延时加载

    网页往下拉,iframe进入浏览器可视范围内才加载iframe。提高页面加载速度。类似图片延时加载

    JS iFrame加载慢怎么解决

    在项目中经常要动态添加iframe,然后再对添加的iframe进行相关操作,有时候会遇到iframe加载很慢什么原因呢,该如何解决呢?带着这个问题一起通过本文学习,寻找答案吧! aaa.html &lt;HTML&gt; &lt;HEAD&gt; &lt;...

    捕捉IFrame SRC改变事件

    页面中的使用到Iframe时,我们如何需要对IFrame中页面是否改变进行判断,我们可以使用到window.onbeforeunload事件.

    easyui iframe 页面重复加载的问题

    解决使用tab布局过程中页面多次加载的问题 如果在使用easyui过程中,你使用了easyui 的tab布局,在tab布局的内容上使用的不是content,而是iframe,那么你的页面有可能多次加载了,这篇文章帮你解决问题

    jQuery弹出层 可加载iframe 功能强大 简单易用

    Query弹出层 可加载iframe 功能强大 简单易用 有说明 源码+例子

    iframe加载时白块及刷新白色背景问题解决

    在使用iframe时,iframe背景为白块,刷新时也会闪过白块。如果刷新时间长,就会一直出现白块,让人很烦恼,通过网上搜资料,测试很多依然没有效果,最终解决方法如下所示,注意主要针对IE浏览器测试。

    js改变Iframe中Src的方法

    本文实例讲述了js改变Iframe中Src的方法。分享给大家供大家参考。具体实现方法如下: &lt;!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"&gt; &lt;html&gt; &lt;head&gt; &lt;title&gt;&lt;/title&gt;...

    asp.net 中使用iframe动态加载页面

    asp.net 中使用iframe动态加载页面

    基于JS判断iframe是否加载成功的方法(多种浏览器)

    主要介绍了基于JS判断iframe是否加载成功的方法【多种浏览器】的相关资料,需要的朋友可以参考下

    动态加载iframe时get请求传递中文参数乱码解决方法

    当用户的页面需要动态加载iframe 时, 如果iframe的src中包传中文参数会出现编码错误;必须加编码,然后再解码。 编码:encodeURI(encodeURI(“包含中文的串”)) 解码:java.net.URLDecoder.decode(“需要解码的串”...

    jquery得到iframe src属性值的方法

    主要介绍了jquery得到iframe src属性值的方法,很简单,很实用,需要的朋友可以参考下

    详解iframe的src指向的内容不刷新的解决办法

    iframe id="h5Content" src=""&gt;&lt;/iframe&gt; js $("#h5Content").attr("src","${h5.url}"); h5.url对应的是一个ueditor编辑好存到数据库的一个页面. 修改这个页面内容提交后,iframe 中呈现的页面并没有变化. ...

    实现iframe延时加载

    问题已经解决了,和各位分享代码: [removed] = function() { frames[“BiframeName”].location.href = “B.htm”; } [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]

    iframe(图片过渡效果欣赏)

    DreamRever学习iframe(图片的过渡效果欣赏) 有制作素材

    iframe内容页白块及刷新白色背景问题解决

    iframe内容页白块及刷新白色背景问题解决,在IE6,IE9上测试通过。

    iframe src为图片时的高度自适应的代码

    对于iframe高度自适应的问题,网上已经被讨论n次了,一般通过在iframe加载完毕时访问... 解决办法如下: 先动态生成一个img元素,在iframe页面加载完成时(onload)将其src赋给img标记,然后获取该img的高宽,再动态

Global site tag (gtag.js) - Google Analytics