CalendarExtender在回发时失去了价值

时间:2012-03-10 11:38:17

标签: postback calendarextender

这是我的日期选择控件的代码。 当Page_Load和链接按钮单击事件传递后,提交包含控件的页面时,tb将重置为初始值(即今天)

<div class="ui-form-text">
    <div>
        <asp:TextBox ID="tb" runat="server" autocomplete="off"></asp:TextBox></div>
</div>
<ajaxToolkit:CalendarExtender ID="ce" runat="server" TargetControlID="tb" Format="dd/MM/yyyy"
    CssClass="calendar" EnableViewState="true">
</ajaxToolkit:CalendarExtender>
<ajaxToolkit:MaskedEditExtender ID="mee" runat="server" TargetControlID="tb" Enabled="true"
    Mask="99\/99\/9999" ClearMaskOnLostFocus="false" EnableViewState="true">
</ajaxToolkit:MaskedEditExtender>
<asp:CompareValidator ID="cv" runat="server" ControlToValidate="tb" Display="Dynamic"
    ErrorMessage="Невалидна дата" Operator="DataTypeCheck" Type="Date" ForeColor="Red">
</asp:CompareValidator>
<asp:RangeValidator ID="rv" runat="server" ControlToValidate="tb" Type="Date">
</asp:RangeValidator>

2 个答案:

答案 0 :(得分:0)

我自己也有同样的问题,我能找到的唯一解决方案(好的,解决方法)就是:

ASP.NET Ajax CalendarExtender will not update SelectedDate value

答案 1 :(得分:0)

我希望这可以帮助你,这对我有用。

String tmp_;
protected void Page_Load(object sender, EventArgs e)
    {
        if (IsPostBack)
        {
            if (Request[txtCalendarExtender.UniqueID] != null)
            {
                if (Request[txtCalendarExtender.UniqueID].Length > 0)
                {
                    this.tmp_ = Request[txtCalendarExtender.UniqueID];
                }
            }
        }
    }