C/S用久了,当收集的数据较少时,比较习惯于弹出一个小页面供用户设置后再返回,在B/S中,可以用以下方式实现下:
在模块窗口的方法中将值保存在window.returnValue中
//child.html <HTML> <HEAD> <META NAME="GENERATOR" Content="Microsoft Visual Studio 6.0"> <TITLE></TITLE> <script language="javascript"> function trans(tag){ if (tag==0){ window.returnValue=false; } else{ window.returnValue =true; } window.close(); } </script> </HEAD> <BODY> <INPUT id=button1 type=button value="返回真" name=button1 onclick="trans(1)"> <INPUT id=button2 type=button value="返回假" name=button2 onclick="trans(0)"> </BODY> </HTML>
在父窗口中弹出模态窗口并收集返回值
//father.html <HTML> <HEAD> <META NAME="GENERATOR" Content="Microsoft Visual Studio 6.0"> <TITLE></TITLE> <script language="javascript"> function showmodal(){ var ret = window.showModalDialog("child.htm",null,"dialogWidth:350px;dialogHeight:350px;help:no;status:no"); if (ret){alert('子窗口返回真!'); }else{ alert('子窗口返回假!'); } } </script> </HEAD> <BODY> <INPUT id=button1 type=button value=Button name=button1 onclick="showmodal();"> </BODY> </HTML>