第一个问题:刷新父窗口(没有传值操作)
父页面打开时一定要传window参数
openModalDialog( "son.html" ,window,800,600);
子页面中刷新:
window.dialogArguments.location= "parent.html" ; //parent.html是父页面的地址
实例:
parent.html
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<HEAD>
<TITLE> </TITLE>
<mce:script type= "text/javascript" ><!--
function openModalDialog(url,name,iWidth,iHeight)
{
window.showModalDialog(url,name, 'edge: Raised; center: Yes; help: Yes; resizable: Yes; status: No;dialogHeight:' +iHeight+ 'px;dialogWidth:' +iWidth+ 'px' );
}
function show(){
openModalDialog( "son.html" ,window,800,600);
}
// --></mce:script>
</HEAD>
<BODY>
<input type= "button" value= "open" onclick= "show()" >
</BODY>
</HTML>
son.html
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<mce:script type= "text/javascript" ><!--
function aa(){
self.close();
window.dialogArguments.location= "parent.html" ;
}
// --></mce:script>
</HEAD>
<BODY>
ssssssssssssssssssssssssssssssssss
<input type= "button" value= "close" onclick= "aa()" >
</BODY>
</HTML>
=================================
第二个问题:只传值不刷新
parent2.html
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<HEAD>
<mce:script type= "text/javascript" ><!--
function show(){
var params = new Array();
params [0] = "00000000000" ;
params [1] = "1111111111" ;
params [2]= "22222222222" ;
var style = "dialogHeight:600px;dialogWidth:800px;status:no" ;
window.showModalDialog( "son2.html" , params , style);
}
// --></mce:script>
</HEAD>
<BODY>
<input type= "button" value= "open" onclick= "show()" >
aaaaaaaaaaaaaaaaaanfddddaas
<input type= "text" >
</BODY>
</HTML>
son2.html
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<mce:script type= "text/javascript" ><!--
var l_array= new Array();
l_array=window.dialogArguments;
var aa=l_array[0];
var bb=l_array[1];
var cc=l_array[2];
alert(aa);
alert(bb);
alert(cc);
// --></mce:script>
</HEAD>
<BODY>
ssssssssssssssssssssssssssssssssss
</BODY>
</HTML>
第三个问题:传值+刷新父窗口
father.html
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<HEAD>
<TITLE>传值+刷新父窗口 </TITLE>
<mce:script language= "javascript" ><!--
function openson(){
var obj = new Object();
obj.name= "张三" ;
obj.address= "中国北京市" ;
var k =window.showModalDialog( "child.html" ,obj, "dialogWidth:800px;dialogHeight:600p;status:no;" );
if (k.type== "" ){ //传递回的type为空的时候才刷新页面。
alert( "刷新了" ); //为了看效果加的,实际运用中请注掉
location.reload();
}
}
// --></mce:script>
</HEAD>
<BODY>
<input type= "button" value= "打开子窗口" onclick= "openson()" >
</BODY>
</HTML>
child.html
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<HEAD>
<TITLE></TITLE>
<mce:script for = "window" event = "onload" ><!--
var s = new Object();
s.type= "" ;
window.returnValue=s;
var k=window.dialogArguments;
alert(k.name); //使用传递过来的nanme "张三“;
alert(k.address); //使用传递过来的address "中国北京市“;
// --></mce:script>
<mce:script type= "text/javascript" ><!--
function doRefresh(){
var s= new Object();
s.type= "" ; //设置返回值。//这里返回刷新父页面。
window.returnValue=s;
window.close();
}
function doNotRefresh(){
var s= new Object();
s.type= "OK" ; //设置返回值,值随便写,不为空就可以。//这里返回不刷新父页面。
window.returnValue=s;
window.close();
}
// --></mce:script>
</HEAD>
<BODY>
<input type= "button" value= "返回刷新" onclick= "doRefresh()" >
<input type= "button" value= "返回不刷新" onclick= "doNotRefresh()" >
</BODY>
</HTML>
第四个 传值+刷新的实际应用
parent3.html
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<HEAD>
<title>传值+刷新</title>
<mce:script type= "text/javascript" ><!--
function show(){
var params = new Array();
params [0] = "00000000000" ;
params [1] = "1111111111" ;
params [2]= "22222222222" ;
var style = "dialogHeight:600px;dialogWidth:800px;status:no" ;
var k=window.showModalDialog( "son3.html" , params , style);
if (k.type== "" ){ //传递回的type为空的时候才刷新页面。
alert( "刷新我了" );
location.reload();
}
}
// --></mce:script>
</HEAD>
<BODY>
<input type= "button" value= "open" onclick= "show()" >
aaaaaaaaaaaaaaaaaanfddddaas
<input type= "text" >
</BODY>
</HTML>
son3.html
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<mce:script type= "text/javascript" ><!--
var s = new Object();
s.type= "" ; //设为空就可以刷新父窗口
window.returnValue=s;
var l_array= new Array();
l_array=window.dialogArguments;
var aa=l_array[0];
var bb=l_array[1];
var cc=l_array[2];
alert(aa);
alert(bb);
alert(cc);
function closeWindow(){
window.close();
}
function doNotRefresh(){
var s= new Object();
s.type= "OK" ; //设置返回值,值随便写,不为空就可以。//这里返回不刷新父页面。
window.returnValue=s;
window.close();
}
// --></mce:script>
</HEAD>
<BODY>
sdafsdfafasdf<br>
<input type= "button" value= "closeAndRefresh" onClick= "closeWindow()" />
<input type= "button" value= "closeAndRefresh" onClick= "doNotRefresh()" />
</BODY>
</HTML>
|