window.showModalDialog 子窗口和父窗口不兼容最新的谷歌
最新版的谷歌不支持window.showModalDialog的写法,会出现,找不到方法的问题,同时返回值的方法window.dialogArguments;也用不了。
这里就只能用最原版的window.open来解决,不过这确实不是好方法,并且谷歌用的时候还不能直接在浏览器运行,必须放在服务器下面才能运行。
father.html
<html> <head> <title>Insert title here</title> <script type="text/javascript"> function openwindow(){ window.open('son.html',document,'height=400,width=400,top=100,left=200,toolbar=no,menubar=no,scrollbars=no,resizable=no,location=no,status=no'); } </script> </head> <body> <form action="" method="post" name="myform"> <table width="533" height="133" border="1" bgcolor="#ffc8c8" align="center" cellpadding="0" cellspacing="0"> <tr> <th colspan="5">简易购物车</th> </tr> <tr align="center"> <td width="92">商品名称</td> <td width="100">数量(件)</td> <td width="110">单价(美元)</td> <td width="101">运费(美元)</td> <td width="130">合计</td> </tr> <tr align="center"> <td>跑跑道具</td> <td>5</td> <td>12.5</td> <td>10</td> <td>72.5美元</td> </tr> <tr align="left"> <td colspan="5"> <a href="javascript:openwindow()">填写你的邮寄地址</a> 区: <input type="text" id="district" size="10" name="district" value="000" /> 街道:<input type="text" size="10" id="street" name="street" value="000" /> </td> </tr> </table> </form> </body> </html>
son.html
<html> <head> <script type="text/javascript"> function closewindow(){ //opener可以获取、设置通过window.open()打开此页面的父页面的值 //opener.document.myform.district.value = "111"; //opener.document.myform.street.value = "222"; window.opener.document.getElementsByName("district").value = "111"; window.opener.document.getElementsByName("street").value = "222"; window.close(); } </script> </head> <body> <form action="" name="myform" method="post"> <table width="290" height="206" align="center" border="0" bgcolor="#ffc8c8" cellpadding="0" cellspacing="0"> <tr> <td colspan="2" align="center"> <span class="style1">送货地址确认</span> </td> </tr> <tr> <td width="124" align="right" valign="middle"> 省份: </td> <td width="166"> <select name="province"> <option value="北京市">北京市</option> <option value="广东省">广东省</option> <option value="河北省">河北省</option> <option value="四川省">四川省</option> <option value="江苏省">江苏省</option> </select> </td> </tr> <tr> <td align="right" valign="middle">城市:</td> <td> <select name="city"> <option value="北京市" selected>北京市</option> <option value="上海市">上海市</option> <option value="广州市">广州市</option> <option value="邯郸市">邯郸市</option> <option value="峨眉山市">峨眉山市</option> </select> </td> </tr> <tr> <td align="right" valign="middle">区:</td> <td> <select name="district"> <option value="西城区">西城区</option> <option value="海淀区">海淀区</option> <option value="白云区">白云区</option> <option value="解放区">解放区</option> <option value="进城区">进城区</option> </select> </td> </tr> <tr> <td align="right" valign="middle">街道:</td> <td><input name="street" type="text" size="20"></td> </tr> <tr> <td align="right" valign="middle">门牌号:</td> <td><input name="number" type="text" size="20"></td> </tr> <tr> <td colspan="2" align="center"> <input name="btn" type="button" value="确认" onclick="javascript:closewindow()"> </td> </tr> </table> </form> </body> </html>
这样能够实现,子窗口选择传给父窗口