您的位置:首页 > 编程语言 > ASP

ASP.NET GridView中鏈結打開模式窗口,當模式窗口關閉時,刷新父頁.

2009-03-27 16:44 309 查看
ASP.NET打開模式窗口,當模式窗口關閉時,刷新父頁.

1.使用Javascript: showModelessDialog打開模式窗口

JS代碼:

function showDialog(url, width, height)
{
showModelessDialog(url, window, 'dialogWidth:' + width + 'px;dialogHeight:' + height + 'px;center:yes;status:no;scroll:yes;help:no');
}

2.在GridView RowDataBound事件添加Link代碼

protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
ID = e.Row.Cells[1].Text.ToString().Replace(" ", "").Trim();

if (ID.Length > 0)
{

//添加DT以免緩存影響
string JS = "View.aspx?ID=" + ID + "&DT=" + DateTime.Now.ToString("yyyyMMddHHmmss");
e.Row.Cells[2].Text = "<a href=/"javascript:/" onclick=/"javascript:showDialog('" + JS + "',800,590);/">I</a>";
e.Row.Cells[2].ToolTip = "Open By ID";
}
}
}

3.在模式窗口Head中添加清除緩存代碼

<meta http-equiv="Pragma" content="no-cache" />
<meta http-equiv="Cache-Control" content="no-cache" />
<meta http-equiv="Expires" content="0" />
<base target="_self" />

4.Body添加關閉模式窗口時執行JS代碼,執行父頁Button事件

body style="margin: 0px" onunload="ref();"

function ref()
{
if(window.dialogArguments != null)
{
//window.dialogArguments.location.reload(true);
//dialogArguments.location.replace(dialogArguments.location);
dialogArguments.document.getElementById("btnQuery").click();
//window.close();
}
}

5.父頁Button click事件

protected void btnQuery_Click(object sender, EventArgs e)
{
try
{
Bind();
}
catch (Exception ex)
{

}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: