用c#从服务器端关闭telerik radwindow
本文关键字:telerik radwindow 服务器端 | 更新日期: 2023-09-27 17:53:11
我用telerik radwindow创建了加载窗口,但我无法在c#中从服务器端关闭它。
有人能帮我吗?
protected void bt_next_Click(object sender, EventArgs e)
{
string script = "function f(){ window.radopen('"'", '"windows_loading'");Sys.Application.remove_load(f); }Sys.Application.add_load(f);";
ScriptManager.RegisterStartupScript(Page, Page.GetType(), "key", script, true);
//here i connect with database and insert all info to database and then i want close the radwindow.
}
您可以像这样实现所需的功能,服务器端(即按钮点击等):
System.Web.UI.ScriptManager.RegisterStartupScript(Page, Page.GetType(), Guid.NewGuid().ToString(), "CloseRadWindow();", true);
然后在客户端使用这些Jquery方法:
function CloseRadWindow() {
//get a reference to the current RadWindow
var wndow = GetRadWindow();
wndow .Close();
}
function GetRadWindow() {
var oWindow = null;
if (window.radWindow) oWindow = window.radWindow;
else if (window.frameElement.radWindow) oWindow = window.frameElement.radWindow;
return oWindow;
}
这对我来说很有效:
aspx:
<asp:Button ID="Button1" runat="server" Text="Save" OnClick="Button1_Click" />
aspx脚本:
<script type="text/javascript">
function GetRadWindow() {
var oWindow = null;
if (window.radWindow)
oWindow = window.radWindow;
else if (window.frameElement && window.frameElement.radWindow)
oWindow = window.frameElement.radWindow;
return oWindow;
}
function CloseModal() {
GetRadWindow().close();
}
</script>
aspx.cs:
ClientScript.RegisterStartupScript(GetType(), "Javascript", "setTimeout(function(){ CloseModal(); },250);", true);