位置:海鸟网 > IT > ASP.NET >

asp.net中的模态对话框

终于开始写B/S的程序。
今天遇到了一个问题, 如何处理模态对话框。具体的要求是:在选择页面上的“添加”按钮,弹出模态对话框,在对话框中添加记录后,选择“确定”按钮,关闭对话框,更新主页面表格的数据。

网上关于模态对话框的讨论有很多,试了一天,发现一个比较好的解决方法:

1、显示对话框:
在javascript脚本文件中加入:
function OpenEditWin(frmWin,width,height)
{
var me;
// 把父页面窗口对象当作参数传递到对话框中,以便对话框操纵父页自动刷新。
me = window;
// 显示对话框。
window.showModalDialog(frmWin,me,''dialogWidth=''+width +''px;dialogHeight=''+height+''px;help:no;status:no'')
}
在C#中调用 :
cmdAdd.Attributes.Add("onclick","javascript:OpenEditWin(''" + Session["showForm"] + "'',540,400)");
很多方法是用 Response.Write或者RegisterStartupscript 来实现,但是都存在问题,如显示对话框时页面是空白、刷新页面的时候弹出对话框等。
在对话框中加入jscript脚本


Session["showForm"]是对话框的aspx文件名,内容很简单,在页面上设计了一些文本框,让用户输入相关信息,还有“确定”和“取消”按钮,选择取“确定”按钮的时候把文本框中的数据保存到数据库中,并关闭对话框,“取消”按钮则取消操作关闭对话框。