asp.net - 如何在父级中确定弹出的 radWindow 是否已关闭?

标签 asp.net telerik popupwindow radwindow

我有一个应用程序,用户单击父窗口上的按钮即可显示弹出窗口。当用户关闭弹出窗口时,如何确定(在父窗口代码隐藏中)用户已关闭弹出窗口?

这是关闭弹出窗口的代码:

<script language="javascript" type="text/javascript">
function closeWin() {
    GetRadWindow().Close();
}  
</script>

<asp:Button ID="btnClose" runat="server" Text="Close" 
OnClientClick="closeWin();return false;" onclick="btnClose_Click"/>  

最佳答案

RadWindowManager 和 RadWindow 都有 onClientClose 事件。

一旦 RadWindow 关闭,OnClientClose 将被调用。然后您可以通过 Ajax 或完整回发调用父页面的代码。

父页面

<telerik:RadWindowManager .... OnClientClose="clientClose">         
</telerik:RadWindowManager>
OR
<telerik:RadWindow ... OnClientClose="clientClose">
</telerik:RadWindow>

<telerik:RadAjaxManager ... ID="RadAjaxManager1" 
    OnAjaxRequest="RadAjaxManager1_AjaxRequest">
</telerik:RadAjaxManager>

父页面内的脚本

function clientClose(oWnd, args) {
   // Optional arguments passed from RadWidow
   var arg = args.get_argument(); 

   // Here the example for ajax post back using RadAjaxManager
   $find("<%= RadAjaxManager1.ClientID %>").ajaxRequest(arg);
}

父页面代码隐藏

protected void RadAjaxManager1_AjaxRequest(object sender, AjaxRequestEventArgs e)
{
   // Argument passed by child window. It is an optional.
   if (e.Argument == "xxx")
   {
      // Do something
   }
}

更新:从子窗口收集返回参数

<script language="javascript" type="text/javascript">
function closeWin(arg) {
    GetRadWindow().Close(arg);
}  
</script>

<asp:Button ID="btnClose" runat="server" Text="Close" 
OnClientClick="closeWin('something');return false;" onclick="btnClose_Click"/> 

关于asp.net - 如何在父级中确定弹出的 radWindow 是否已关闭?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16065252/

相关文章:

c# - MVC ajax调用如何处理错误响应

JavaScript 仅在 Safari 开发控制台打开时才起作用

c# - Telerik 中报告参数 XXX 的值无效

java - Webview里面弹出窗口android

javascript - 阻止与非阻止弹出窗口

ios - 如何在单击按钮时在 i-Phone 中添加弹出菜单?

c# - EntityFramework 同表多对多关系

c# - 有没有第三方文件上传工具可以上传大于2GB的文件?

c# - 内容占位符背景图片

c# - 如何覆盖嵌入在 Telerik 程序集中的样式表?