本文主要对防止模式对话框弹出新子窗口,和父子窗口间的通信进行介绍。
比如,如下代码是子窗口(模式窗口)的jsp中的js代码。
function test() {
var flag = document.getElementById("key");
if (flag.value == "true") {
window.returnValue = true;
window.close(); }
}
"key"是jsp页面中某标签的id,比如其可以是<s:hidden name="key" value="value1">,其中value1是action中的某个返回属性,当value1=true时,子窗口就向父窗口返回true并关闭该子窗口(调用window.close();).
上面光给出了子窗口中的js代码,下面给出子窗口中的jsp代码,比如jsp代码为:
<s:form action="test" target="heihei">
<s:hidden name="key" value="%{value1}"/>
..............................
</s:form>
<script language="javascript" type="text/javascript">
<!--
window.name='heihei';
test();
//-->
</script>
上面<script language="javascript" type="text/javascript"></script>
中的window.name=“heihei”;就是防止子窗口重新再另外打开一个子窗口的。并且window.name="heihei"中的"heihei"要和表单<s:form action="test" target="heihei">中的target的值(”heihei“)相同,简而言之就是,每次打开的子窗口都是当前窗口,即是在target指定的窗口中打开。要实现在模态子窗口中传值到父窗口,需要使用window.returnValue完成
在父窗口中就可以得到该子窗口返回的值,其得到方式为:
var newWin=window.showModelDialog(url,window,'');当上面的子窗口返回为ture是,父窗口中的值newWin的值就为true否则为false。函数window.showModelDialog(url,window,'')中的第一个参数可以是一个action(比如:test.action或"test.shtml?page=1"),也可以是一个具体的jsp(test.jsp)页面。
1. 在子窗口中:
//获取父窗口某字段值,对该值加一后返回父窗口
var parent=window.dialogArguments;
var x=parent.docuement.getElementById("age").value;
x=x+1;
//传回x值
window.returnValue=x;
2.在父窗口中:
//获取来自子窗口的值,并把其赋给某个对象
var newWin=window.showModelDialog(url,window,'');
if(newWin!=null)
document.getElementById("age").value=newWin;
3.子窗口设置父窗口的值使用方法如下:
子窗口中:
//age是父窗口中的某标签对象的id
var parent=window.dialogArguments;
var x=parent.document.getElementById("age").value;
x=x+1;
//设置父窗口中age属性值
parent.document.getElementById("age").value=x;
走笔至此!
分享到:
相关推荐
MFC对话框 父子进程之间通过一个匿名管道进程通信
pyqt父子窗口相互传值 pyqt信号槽的使用 对新手可能有帮助
父子对话框之间的交互父子对话框之间的交互
1、CListCtrl控件:设置CListCtrl网格,内容项隔行变色,插入一行数据,删除数据,选中整行,双缓冲技术解决闪烁问题等。。 2、模态对话框及非模态对话框的使用 3、父子窗口间传值
qt 工程文件 实现父子窗口之间的切换 主要步骤如下: 1.在子窗口的cpp源文件中(childwindow.cpp),声明一个自定义信号(void mysignal()) 和 一个用于发送自定义信号的自定义槽函数( void sendMysignal() )。 2.在...
父子窗口部件的建立
jquery父子窗口互相获取元素demo的代码,希望对大家有用
Qt主窗口与子窗口之间相互传值,对新手有帮助。
父子窗口的应用程序源代码.rar 父子窗口的应用程序源代码.rar 父子窗口的应用程序源代码.rar
这个是我在学习MFC过程...还有让图片有win7按钮的效果(win7下面运行),还有加密解密(可以通过把一般的文件托进入窗口,进行加密,可以按钮进行解密),还有父子窗口,出现自窗口切换的效果....可以给大家看看......
主要介绍了js操作模态窗口及父子窗口间相互传值,需要的朋友可以参考下
子对话框需要调用父对话框的数据,通过子对话框的构造函数来实现参数的传递
使用VS2015写的MFC子窗口与父窗口之间消息的传递,可以直接执行
Web开发中的window.open父子窗口传值问题 部署在tomcat中进行
MFC多个窗口之间的消息传递,数值传递。多个cpp文件之间数值的共用
程序包含:主对话框上粘贴子对话框操作,通过改变组合框上选项,更新主对话框上子对话框,有详细注释,大家共同学习
子父窗口子父窗口子父窗口子父窗口子父窗口子父窗口子父窗口子父窗口子父窗口子父窗口子父窗口子父窗口子父窗口子父窗口
delphi开发MDI多窗口程序(office word那种父子窗口).zip
UNIX下C语言实现父子进程通信,通过管道实现