DatePicker回发返回原始值

时间:2017-12-12 17:34:08

标签: c# asp.net

我有这样的日历:image

控制器:

  protected void Page_Load(object sender, EventArgs e)
        {

 fecha_fin.Text = DateTime.Today.ToString("yyyy/MM/dd", CultureInfo.InvariantCulture);
                    Thread.CurrentThread.CurrentCulture = new CultureInfo("es-MX");

 }


  protected void DateChange(object sender, EventArgs e)
        {
            fecha_fin.Text = Calendar1.SelectedDate.ToString("yyyy/MM/dd");
        }

查看:

  <td>
                <asp:TextBox ID="fecha_fin" ClientIDMode="Static" runat="server"></asp:TextBox>
                <asp:Calendar ID="Calendar1" runat="server" OnSelectionChanged="DateChange" DayNameFormat="FirstLetter" Font-Names="Tahoma" Font-Size="11px" NextMonthText="." PrevMonthText="." SelectMonthText="»" SelectWeekText="›" CssClass="myCalendar" CellPadding="0">
                    <OtherMonthDayStyle ForeColor="#b0b0b0" />
                    <DayStyle CssClass="myCalendarDay" ForeColor="#2d3338" />
                    <DayHeaderStyle CssClass="myCalendarDayHeader" ForeColor="#2d3338" />
                    <SelectedDayStyle Font-Bold="True" Font-Size="12px" CssClass="myCalendarSelector" />
                    <TodayDayStyle CssClass="myCalendarToday" />
                    <SelectorStyle CssClass="myCalendarSelector" />
                    <NextPrevStyle CssClass="myCalendarNextPrev" />
                    <TitleStyle CssClass="myCalendarTitle" />
                </asp:Calendar>

            </td>

默认情况下,今天选择了日期,当我选择另一天时问题开始,它正确地更改日期&#34; DateChange&#34;方法,问题在我在我的页面中选择其他东西时开始,它今天再次发布日期

例如image这里我选择了31月10日,但文字又在12月12日返回。为什么页面重新加载回发作为原始页面(页面加载时)?此致

1 个答案:

答案 0 :(得分:1)

protected void Page_Load(object sender, EventArgs e) {
    if (!IsPostBack) {
        fecha_fin.Text = DateTime.Today.ToString("yyyy/MM/dd", CultureInfo.InvariantCulture);
        Thread.CurrentThread.CurrentCulture = new CultureInfo("es-MX");
    }

}

在页面加载时检查它是否没有页面加载..这不会改变回发后的值...

if(!IsPostBack)&lt; - 这检查它的回拨电话或页面刷新电话。