吟空麦子

C#关闭当前页面时刷新父页面的方法

我们经常会遇到这样的需求:通过父页面的某按钮打开子页面,处理后关闭子页面,但是此时已经被子页面更改的数据如何刷新到父页面呢?

今天麦子给大家分享一个适用于Asp.Net的方法:

第一步,我们要做的是在父页面增加一个LinkButton。

<asp:linkbutton id="btnYkmaiz" tabIndex="-1" Runat="server"></asp:linkbutton>

第二步,我们就要为linkbutton创建一个鼠标单击事件。

protected void btnYkmaiz_Click(object sender, EventArgs e) 
{ 
    //我们要处理的代码 
}

第三步,接着我们在父页面的页面加载事件中给linkbutton增加一个onfocus的事件(onfocus是获取焦点触发)。

btnYkmaiz.Attributes.Add("onfocus", "javascript:__doPostBack('btnYkmaiz','');")

第四步,再去父页面里写上如下的javascript。

<script language="javascript"> 
function openDialog() 
{ 
   var url = "子页面路径"; 

   var result = window.showModalDialog(url,"center: yes; status: no;"); 

   if (result == "OK") window.dialogArguments.returnValue = 'OK' 

   { 

          document.all["btnYkmaiz"].focus(); 

   } 

} 
</script>

第五步,在子页面最后处理完的确认按钮上加上如下代码。

string strTemp="<script language=javascript>"; 

strTemp+="window.dialogArguments.returnValue = 'OK';window.close()";strTemp+="</script>"; 

this.Page.RegisterClientScriptBlock("",strTemp);

赶快去试试吧!

码字很辛苦,转载请注明来自吟空麦子的技术博客《C#关闭当前页面时刷新父页面的方法》 原文链接:https://www.ykmaiz.com/csharp/127.html

评论