Javascript aspx/c关闭弹出窗口时刷新

Javascript aspx/c关闭弹出窗口时刷新,javascript,c#,asp.net,Javascript,C#,Asp.net,我的代码有点问题 我有一个asp:Wizard元素,其中有几个步骤。 在一个步骤中,我点击一个按钮,打开一个弹出窗口窗口。打开选择一个日期时间。 当我选择一个时,弹出窗口正在关闭,但日期时间在我的父窗口中不可见,但它在那里,因为当我再次单击我的窗口时。打开它将重新加载我的页面,日期现在可见 当我用window.parent.opener.location.reload关闭弹出窗口时,我已经尝试重新加载父级页面,但此解决方案会使我丢失向导的活动步骤。 因此,我需要的是部分刷新我的页面,以保持当前步

我的代码有点问题

我有一个asp:Wizard元素,其中有几个步骤。 在一个步骤中,我点击一个按钮,打开一个弹出窗口窗口。打开选择一个日期时间。 当我选择一个时,弹出窗口正在关闭,但日期时间在我的父窗口中不可见,但它在那里,因为当我再次单击我的窗口时。打开它将重新加载我的页面,日期现在可见 当我用window.parent.opener.location.reload关闭弹出窗口时,我已经尝试重新加载父级页面,但此解决方案会使我丢失向导的活动步骤。 因此,我需要的是部分刷新我的页面,以保持当前步骤。 下面是代码

我的开场白:

var childWindow = window.open("../../Utils/CalendarPopup.aspx?DatePred=Stateme‌​‌​ntDateFrom", "", "height=280; width=285;);
 childWindow.onunload = function () 
{ // Where i need to reload }
我的弹出窗口:

Session[Request.Params["DatePred"]] = CalendarSelectDate.SelectedDate;
Session["CalendarPopupCanceled"] = 0;
this.ClosePage();
数据加载:

if (Session["StatementDateFrom"] != null)
        {                
            {
                (WizardProcess.FindControl("DtTxtBxStatementDateFrom") as Syncfusion.Web.UI.WebControls.Shared.DateTimeTextBox).IsNullDate = false;
                (WizardProcess.FindControl("DtTxtBxStatementDateFrom") as Syncfusion.Web.UI.WebControls.Shared.DateTimeTextBox).Value = System.Convert.ToDateTime(Session["StatementDateFrom"]);
            }            
            Session["StatementDateFrom"] = null;
        }

提前感谢

我不知道您是如何编写代码的,但为什么需要重新加载子窗口。如果您有一个控件,例如一个显示从childWindow中选择的日期时间的文本框,则可以将该控件的值设置为所选日期时间。这应该比只刷新向导更容易

共享您的代码打开:var childWindow=window.open.././Utils/CalendarPopup.aspx?DatePred=Stateme‌​ntDateFrom,高度=280;宽度=285;;childWindow.onunload=函数{//需要重新加载的地方};是的,这是另一个人编写的,我现在必须在里面编写代码,所以我不知道它是如何工作的。我只看到c函数中的值发生了变化,而这个函数只在onload方法上被调用。所以我需要在弹出窗口的“onunload”处调用这个函数,它应该可以工作,我想?好的,正如我所说的,您可以尝试使用JS onunload函数设置值。这里:childWindow.onunload=函数{//我需要重新加载的地方};是的,但我已经有了一个C函数,它可以通过完全控制来完成这项工作,只需调用这个函数就更容易了。否?C函数控制后面的代码,您无法使用C函数刷新前端的窗口。我的意思是保持一切原样,但只有在关闭子窗口时,才能执行以下操作:var date=$'datetimepickerid'.val;$'textboxdatetime'.valdate;哦,是的,我忘记了刷新代码隐藏的问题。谢谢,我试试这个!