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

简介: 原文:解决父类加载iframe,src参数过大导致加载失败 或者是使用js加载src:var params = "?pk_id="+pk_id;var frameLeftSrc = "/****/****.do"+params;$('#leftFrame').attr("src",frameLeftSrc);(先说明一下,此处只是以一个参数为例,实际可能会有多个参数。
原文: 解决父类加载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页面了。

目录
相关文章
|
1月前
|
JavaScript
js判断图片是否加载完成
js判断图片是否加载完成
24 0
|
5月前
|
前端开发
post方式加载iframe
post方式加载iframe
|
6月前
zTree 动态参数上传到服务器
zTree 动态参数上传到服务器
18 0
|
JavaScript 前端开发
react 实现图片正在加载中 加载完成 加载失败三个阶段的
最近博客写道项目列表中,发现这里比较多图片,一开加载会比较慢,然后就想要用一个loading的图片来占位。与此同时,如果图片加载失败那么显示错误的图片,不显示一个原有的错误,那样比较难看。
react 实现图片正在加载中 加载完成 加载失败三个阶段的
|
JavaScript 前端开发
JavaScript判断各种资源是否加载完成的方法汇总,资源预加载问题
JavaScript判断各种资源是否加载完成的方法汇总,资源预加载问题
455 0
一个简单的页面加载管理类(包含加载中,加载失败,数据为空,加载成功)(上)
在最近公布的比赛框架中,发现了页面加载管理类,觉得挺有用的,所以做个简单的笔记。
80 0
一个简单的页面加载管理类(包含加载中,加载失败,数据为空,加载成功)(上)
一个简单的页面加载管理类(包含加载中,加载失败,数据为空,加载成功)(下)
在最近公布的比赛框架中,发现了页面加载管理类,觉得挺有用的,所以做个简单的笔记。
84 0
一个简单的页面加载管理类(包含加载中,加载失败,数据为空,加载成功)(下)
|
JavaScript 前端开发
Vue中 iframe 的内容加载慢,实现加载(Loading)效果
Vue中 iframe 的内容加载慢,实现加载(Loading)效果
1311 0
Vue中 iframe 的内容加载慢,实现加载(Loading)效果
|
缓存 JavaScript 开发者
require 函数加载模块原理(被加载的模块会先执行一次)|学习笔记
快速学习 require 函数加载模块原理(被加载的模块会先执行一次)
393 0
require 函数加载模块原理(被加载的模块会先执行一次)|学习笔记
|
前端开发
一个"剑气"加载🌪️
一个"剑气"加载🌪️