Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
If Not IsPostBack Then
' hdncurrpayperiod.Value = test1.ToString
hdnPayperiod.Value = test1.ToString
lblPayPeriodStartDt.Text = test1
Else
lblPayPeriodStartDt.Text = hdnPayperiod.Value
End If
End Sub
Private Sub btnnext_Click(ByVal sender As Object, ByVal e As System.Web.UI.ImageClickEventArgs) Handles btnnext.Click
' hdnPayPeriodStartDt.Value = ""
Dim datenext As Date
Dim datenextpayperiod As String
datenext = DateTime.Parse(lblPayPeriodStartDt.Text)
datenextpayperiod = datenext.Add(New TimeSpan(14, 0, 0, 0)).ToString("MM/dd/yyyy")
hdnPayperiod.Value = datenextpayperiod
lblPayPeriodStartDt.Text = hdnPayperiod.Value
'hdnPayperiod.Value = lblPayPeriodStartDt.Text.ToString
Response.Redirect("TimeSystem.aspx?PayPeriodStartDate=" + HttpUtility.UrlEncode(hdnPayperiod.Value), False)
End Sub
这是一个用户控件,其中包含带有下一个和上一个按钮以及标签的日历。我在初始加载(而不是回发)时从用户控件属性获取初始日期,在下一个按钮单击时,它会添加14天并显示在标签上。一切都很好,直到我使用response.redirect,它不会回发并再次获取属性值。我怎么能避免这种情况。我必须在网址中添加14天的日期值,但这只发生一次,因为每次点击response.redirect时都会刷新属性值。如果我不清楚,请告诉我
答案 0 :(得分:0)
在非IsPostBack块中的Page_Load中添加另一个' if'检查PayPeriodStartDate' PayPeriodStartDate'存在于查询字符串(Request.QueryString)中。如果是 - 使用该值设置隐藏字段和标签,如果它不使用' test1'代码示例中的值。