window.returnValue跨域传值问题[转]
主页面用window.showModalDialog的时候,如果直接打开其它系统的页面,这时候别人的页面在window.returnValue=1;这样返回值的时候,主页面是取不到返回值的,原因就是因为跨域了.
解决办法如下:
1,首先主页面testMain.jsp先打开一个中转页面,
Java代码
<html>
<head>
</head>
<body>
<input type="button" value="test" onclick="test();"/>
</body>
</html>
<script type="text/javascript">
function test() {
var paramObj = new Object();
//弹出模式窗口,集成页面
var ret_Value = window.showModalDialog("testFrame.jsp",paramObj,"scroll:no;resizable:yes;Minimize:no;Maximize:yes;dialogHeight:700px;dialogWidth:1024px;");
alert("返回值---" + ret_Value);
}
</script>
2,中转页面testFrame.jsp中要有一个iframe,然后把其它系统要打开的页面(这里的例子就是http://192.168.1.120:8080/test.jsp)放在这个iframe中,这里用一个FORM来存放要提交的数据,代码如下:
Java代码
<html>
<body>
<form id="page_interface_form" name="page_interface_form" method="post">
<input type="hidden" value="测试数据11111111" name="data" />
</form>
<iframe name="page_interface_frame" width="100%" height="100%" ></iframe>
</body>
</html>
<script type="text/javascript">
//嵌入集成页面
call_page_interface();
//在iframe中调用页面集成接口
function call_page_interface(){
document.getElementById("page_interface_form").action = "http://192.168.1.120:8080/test.jsp";
document.getElementById("page_interface_form").target = 'page_interface_frame';
document.getElementById("page_interface_form").submit();
}
</script>
亲测可用
参考:http://download.csdn.net/download/hefang0711/7239985
window.returnValue跨域传值问题[转]的更多相关文章
- js跨域传值,兼容ie8以上
js跨域传值,兼容ie8以上 事先说明,此方法并不支持ie8,如果想要支持ie8的话,需要用这种思路(来自微软): if (window.addEventListener) { window.addE ...
- window.name 跨域
跨域的由来 JavaScript出于安全方面的考虑,不允许跨域调用其他页面的对象.但是我们常常会遇到无法避免跨域的情况,如普通文章站点(article.xxx.com)需要评论,而评论站点却在chea ...
- JS window.name跨域封装
JS window.name 跨域封装 function CrossDomainName(target, agent, callback, security) { if (typeof target ...
- window.name跨域
window.name? 每一个页面都有一个自己的window,而window.name是window的名字. window.name跨域原理 window对象有个name属性,该属性有个特征:即在一 ...
- ajax异步请求/同源策略/跨域传值
基本概念 Ajax 全称是异步的 JavaScript 和 XML . 通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新.这意味着可以在不重新加载整个网页的情况下,对网页的某部分进 ...
- HTML5 window/iframe跨域传递消息 API
原文地址:HTML5′s window.postMessage API 在线示例:Using HTML5's window.postMessage(请打开控制台看日志) 原文日期: 2010年09月0 ...
- (二)文档请求不同源之window.name跨域
一.基本原理 window.name不是一个普通的全局变量,而是当前窗口的名字.这里要注意的是每个iframe都有包裹它的window,而这个window 是top window的子窗口,而它自然也有 ...
- (二)文档请求不同源之window.postMessage跨域
一.基本原理 HTML5为了解决跨域,引入了跨文档通信API(Cross-document messaging).这个API为window对象新增了一个window.postMessage方法,允许跨 ...
- Javascript 使用postMessage对iframe跨域传值或通信
实现目标:两个网站页面实现跨域相互通信 当前例子依赖于 jQuery 3.0 父页面代码:www.a.com/a.html <iframe id="myIframe" src ...
随机推荐
- serialVersionUID的作用
Java的序列化机制是通过在运行时判断类的serialVersionUID来验证版本一致性的.在进行反序列化时,JVM会把传来的字节流中的serialVersionUID与本地相应实体(类)的seri ...
- 类:String,Math,DateTime,Random
string类: 判断邮箱格式是否正确: 1.有且只能有一个@ 2.不能以@开头 3.@之后至少有一个. 4.@和.不能靠在一起 5.不能以.结尾 math 类: math.ceiling() ...
- 请求网络get
package com.baidu.net; import java.io.IOException; import org.apache.http.HttpEntity;import org.apac ...
- 编译.NET项目的时候报错错误“ResGen.exe”已退出,代码为 -1073741701
解决的办法如下: 1.关闭所有Visual Studio: 2.以管理员的身份打开命令提示窗口:(开始-运行-cmd) //有人说要使用vs tools 里面的控制台 亲试无卵用 3. ...
- Mongodb优化
本文将从各个层面讲述Mongodb的优化方法
- C#生成随机字符串(数字,字母,特殊符号)
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...
- OC 相关
1.OC runtime的理解[转载] http://www.csdn.net/article/2015-07-06/2825133-objective-c-runtime/1
- winfrom自定义控件
c#TabControl控件左边选项卡左边显示,文字横向显示 http://blog.csdn.net/kasama1953/article/details/52133713 WinForm中,给Te ...
- vue 2.0版本----》常用代码说明
------------------------------------------代码不显示-------------------------------------------- [v-cloak ...
- Sql Server Analysis Service 转换为UnknownMember的正确设置 (转载)
转载: http://www.cnblogs.com/OpenCoder/p/4754447.html#commentform 在SSAS中事实表数据被归类到为UnknownMember 的时候分为两 ...