Jsp页面弹出输入对话框的实现
来源:
作者:
时间:2008-06-26
Tag:
点击:
<body bgcolor=#66CD00>
<FONT size=5>请输入新邮件夹的名称:</FONT>
<FORM method=post name=form1 action="">
<INPUT type=text name=inboxname size=35><p>
<INPUT type=button name=inputboxbt value=确定 onclick="bconfirm();">
<INPUT type=button name=inputboxbs value=取消 onclick="bcancel();">
</FORM>
</body>
</html>
在NewBox.jsp里先给AddName.jsp里的一个隐藏表单inboxname赋值,就是这句:
opener.document.all['inboxname'].value=document.form1.inboxname.value;
然后调用AddName.jsp里的一个js函数:opener.opensub();
这样AddName.jsp就会自动提交表单到Servlet接着刷新页面,这样就完成了!
二.通过window.showModalDialog方法弹出对话框。(推荐)
仍然是在页面AddName.jsp里要调用对话框,写一个JSP页面NewBox.jsp(用做对话框),然后在页面AddName.jsp里加上一段js代码:
/*用来打开对话框页面,注意这回openwindow()函数里的的方法是window.showModalDialog*/
function openwindow(){
window.showModalDialog("NewBox.jsp",window,"status:no;scroll:no;
dialogWidth:235px;dialogHeight:100px");
}
/*在NewBox.jsp里调用这个函数,用来刷新AddName.jsp*/
function opensub(){
document.form1.submit();
}
对window.showModalDialog里的参数简单做一下说明:
center : yes | no | 1 | 0 | on | off 指定对话框是否显示于桌面正中。默认值为 yes 。
dialogHide : yes | no| 1 | 0 | on | off 指定当打印或打印预览时对话框是否隐藏。仅仅当对话框是由被信任的程式打开的时候此参数才可用。默认值为 no 。
edge : sunken | raised 指定对话框窗口边框样式为凹下还是凸起的。默认值为 raised 。
resizable : yes | no | 1 | 0 | on | off 指定对话框是否可以被用户改变尺寸。默认值为 no 。
scroll : yes | no | 1 | 0 | on | off 指定对话框是否显示滚动条。默认值为 yes 。
status : yes | no | 1 | 0 | on | off 指定对话框是否显示状态条。对于不被信任的对话框默认值为 yes 。对于被信任的对话框默认值为 no 。
unadorned : yes | no | 1 | 0 | on | off 指定对话框是否显示 chrome 样式边框。仅仅当对话框是由被信任的程式打开的时候此参数才可用。默认值为 no 。
另外,在NewBox.jsp的javaScript代码bconfirm()方法中:
<SCRIPT>
<!--
function bconfirm(){
dialogArguments.addNameform.inboxname.value=document.form1.
inboxname.value;
dialogArguments.opensub();
window.close();
}
function bcancel(){
window.close();
}
-->
</SCRIPT>
注:addNameform为AddName.jsp中隐藏表单name,使用window.showModalDialog方法是要用dialogArguments传递参数。其他部分不变。