gpt4 book ai didi

asp.net - 如何在不刷新父窗口的情况下关闭radwindow

转载 作者:行者123 更新时间:2023-12-02 14:32:43 25 4
gpt4 key购买 nike

我有一个启动 Telerik radwindow 的父页面。每件事都运作良好。我的问题是当 radwindow 关闭时,父级再次重新加载。我不想要这个。如何关闭 radwin

一旦 radwindow 处理完该值,我需要它将其返回到父页面,并且我希望父页面能够在我的代码隐藏页面中访问该值。

最佳答案

父 ASPX:

<telerik:RadWindowManager ID="RadWindowManager1" runat="server" DestroyOnClose="true" Width="750px" Height="500px" OnClientClose="onClientClose">
<windows>
<telerik:RadWindow ID="RadWindow1" runat="server">
</telerik:RadWindow>
</windows>
</telerik:RadWindowManager>
<%-- RadAjaxManager --%>
<telerik:RadAjaxManager ID="RadAjaxManager1" runat="server" OnAjaxRequest="RadAjaxManager1_AjaxRequest">
<ajaxsettings>
<telerik:AjaxSetting AjaxControlID="RadAjaxManager1">
<UpdatedControls>
<telerik:AjaxUpdatedControl ControlID="RadAjaxManager1" />
<telerik:AjaxUpdatedControl ControlID="RadGrid1" />
</UpdatedControls>
</telerik:AjaxSetting>
</ajaxsettings>
</telerik:RadAjaxManager>

<telerik:RadCodeBlock ID="RadCodeBlock1" runat="server">

<script type="text/javascript">

// Insert in RadWindow
function showForm(url) {
window.radopen(url, "RadWindow1");
return false;
}


function onClientClose(oWnd, args) {
// get the transferred arguments
var arg = args.get_argument();
if (arg == '' || arg == null) {
// No need to refresh RadGrid
}
else {
$find("<%= RadAjaxManager1.ClientID %>").ajaxRequest(arg);
}
}


</script>

</telerik:RadCodeBlock>

父级代码背后:

protected void RadAjaxManager1_AjaxRequest(object sender, AjaxRequestEventArgs e)
{
var result = Int32.Parse(e.Argument); // return argument from child
}

子 ASPX

<telerik:RadCodeBlock ID="RadCodeBlock1" runat="server">

<script type="text/javascript">

//mandatory for the RadWindow dialogs functionality
function getRadWindow() {
if (window.radWindow) {
return window.radWindow;
}
if (window.frameElement && window.frameElement.radWindow) {
return window.frameElement.radWindow;
}
return null;
}

// Fires when the changes are saved
function onClientClose(arg) {
// Pass the arguments from the dialog to the callback function on the main page.
getRadWindow().close(arg);
}
</script>

</telerik:RadCodeBlock>

子代码隐藏

protected void ChildSave_Click(object sender, EventArgs e)
{

ClientScriptManager cs = Page.ClientScript;

cs.RegisterStartupScript(typeof(Page), "CloseScript_" + UniqueID,
"onClientClose('1');", true); // Return value 1 to parent

}

关于asp.net - 如何在不刷新父窗口的情况下关闭radwindow,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6627750/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com