window.open() 父子页面的传参&传值问题

window.open() 传参问题: 
父页面中: 
Java代码   收藏代码
  1. window.open('url''''resizable=1, menuBar=0, toolBar=0, scrollbars=yes, Status=yes, resizable=1');  


url页面拿父页面的xx元素赋值 
Java代码   收藏代码
  1. opener.document.getElementById("xx").value="newValue";  


Java代码   收藏代码
  1. if(window.opener){//判断是否有父窗口,即打开本页面的窗口  
  2.     window.opener.location.reload();//刷新父窗口  
  3.     window.opener.close();  //关闭父窗口  
  4. }  



window.open() 传值问题(参考:http://www.cnblogs.com/gavindou/archive/2008/04/09/1143858.html): 
a.html(父) 
注意:window.open("b.html","","modal=yes,width=500,height=500,resizable=no,scrollbars=no"); 中的第3个参数一定要有  modal=yes 
Java代码   收藏代码
  1. "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">   
  2. "http://www.w3.org/1999/xhtml">   
  3.    
  4. "Content-Type" content="text/html; charset=gb2312" />   
  5. a.html文档   
  6. "text/javascript">   
  7. function openstr()   
  8. {   
  9. window.open("b.html","","modal=yes,width=500,height=500,resizable=no,scrollbars=no");   
  10. }  
  11.   
  12.    
  13.    
  14.   
  15.    
  16. "form1" name="form1" method="post" action="">   
  17. "txtselect" id="txtselect">   
  18.    
  19.    
  20. "button" name="Submit" value="打开子窗口" οnclick="openstr()" />   
  21.    
  22.    
  23.    
  24.    


b.html(子) 
Java代码   收藏代码
  1.    
  2.    
  3. "Content-Type" content="text/html; charset=gb2312" />   
  4. b.html文档   
  5. "text/javascript">   
  6. function ClickOk()   
  7. {   
  8. var t=document.Edit;   
  9. var color=t.color.value;   
  10. if(color==null||color=="填写颜色"return(false);   
  11. var oOption = window.opener.document.createElement('OPTION');   
  12. oOption.text=document.getElementById("color").value;   
  13. oOption.value=document.getElementById("color").value;   
  14. //检查浏览器类型  
  15. var bname = navigator.appName;  
  16. if (bname.search(/netscape/i) == 0)  
  17. {  
  18. window.opener.document.getElementById("txtselect").appendChild(oOption);   
  19. }  
  20. else if (bname.search(/microsoft/i) == 0)  
  21. {  
  22. window.opener.document.all.txtselect.add(oOption);   
  23. }  
  24. else  
  25. {  
  26. }  
  27. window.close();   
  28. }   
  29.    
  30.    
  31.    
  32. "0" cellpadding="0" cellspacing="2" align="center" width="300">   
  33. "Edit" id="Edit">   
  34.    
  35. "30" align="right" height="30">color:   
  36. "30">"text" name="color" id="color" value="填写颜色" />   
  37. "56" align="center" height="30">" type="button" name="bntOk" value="确认" οnclick="ClickOk();" />    
  38.    
  39.    
  40.    
  41.    
  42.   



Java代码   收藏代码
  1. var url = '/xxx/xx.jsp?yearNum='+yearNum;  
  2.           
  3.         if (typeof window.ActiveXObject != 'undefined') { // 支持IE浏览器  
  4.             var weekNum=document.getElementById("weekNum").value;  
  5.             var arguments    = new Array();  
  6.             arguments[0] = weekNum;  
  7.             var returnValue = window.showModalDialog(url,arguments,'dialogHeight:500px;dialogWidth:380px;dialogTop:300px; dialogLeft:500px;center:yes;scroll:yes;status:no;resizable:no;edge:raised;help:no;unadorned:yes');  
  8.             if(returnValue!=null && returnValue[0]){  
  9.                 document.getElementById("weekNum").value=returnValue[1];  
  10.                 document.getElementById("beginDate").value=returnValue[2];  
  11.                 document.getElementById("endDate").value=returnValue[3];  
  12.             }   
  13.         }  
  14.         else if((typeof document.implementation != 'undefined')  
  15.                     &&(typeof document.implementation.createDocument!='undefined')) { // 支持Mozilla浏览器  
  16.   
  17.             window.open(url,'weekNum','modal=yes,menubar=0,status=0,toolbar=0,scrollbars=1,resizable=1,width=400px,height=500px,top=300,left=500');  
  18.           
  19.         }  

你可能感兴趣的:(jsp)