AJAX Calendar Extender显示错误的日期

时间:2013-02-11 15:33:18

标签: asp.net calendarextender

我有一个带有母版页的aspx页面。母版页包含asp:ScriptManager。 aspx页面的ajaxToolkit:CalendarExtender已退出更改文本框中日期的月份。加载页面时,与扩展程序关联的文本框中填充了数据库中的信息。

这个aspx页面是在几个月前创建的,并且一直运行良好。在更新期间,我不得不在其末尾添加几个额外的div,并且Calendar Extender继续按预期工作几周。昨天,当日历控件中选择了不同的日期时,它决定不更改文本框中的月份。我所做的改变与扩展器或其所包含的区域无关,所以我对导致问题的原因完全不知情。

<%@ Page Language="VB" MasterPageFile="~/MasterPage.master" AutoEventWireup="false"
Inherits="Quote.Edit" Title="Quote - Edit Information"
CodeBehind="Rate.aspx.vb" %>
<%@ Register Src="TabsControl.ascx" TagName="TabsControl" TagPrefix="uc1" %>

<asp:Content>...several other Contents here...</Content>
<asp:Content ID="Content4" ContentPlaceHolderID="MainPlaceHolder" runat="server">
    <asp:UpdatePanel ID="upContent" runat="server" UpdateMode="Conditional" ChildrenAsTriggers="False">
        <ContentTemplate>
            <div>...several other divs here...</div>
            <div class="other=container">
                <asp:UpdatePanel ID="upEdit" runat="server" UpdateMode="Conditional" ChildrenAsTriggers="False">
                    <ContentTemplate>
                        <div id="EditArea" runat="server">
                            <table class="general">
                                <tr>...several other rows here...</tr>
                                <tr><td colspan="2>
                                    <asp:Label id="lblEffDate" runat="server" AssociatedControlID="txtEffDate" Text="Effective Date" />
                                    <div>
                                        <asp:Textbox ID="txtEffDate" runat="server" Width="100" CssClass="notfirst" AutoPostBack="true" />
                                        <asp:Image ID="imgCal" runat="server" ImageUrl="images/Calendar_scheduleHS.png" CssClass="top3" />
                                    </div>
                                    <ajaxToolkit: CalendarExtender ID="ceEffDate" PopupButtonID="imgCal" TargetControlID="txtEffDate" Animated="false" runat="server" Format="mm/dd/yyyy" />
                                    <ajaxToolkit: MaskedEditExtender ID="meEffDate" runat="server" MaskType="Date" TargetControlID="txtEffDate" Mask="99/99/9999" />
                                </td></tr>
                                <tr>...several other rows here...</tr>
                            </table>
                        </div>
                        <div>...several other divs here...</div>
                    </ContentTemplate>
                </UpdatePanel>
            </div>      
        </ContentTemplate>
    </UpdatePanel>
</Content>

此前后有大量代码,但这是日期控件所在的区域。

唯一涉及的代码隐藏是从数据库获取信息并将其加载到文本框中。当您使用Calendar Extender更改日期时,该日期在文本框中保持不变(日期和年份将更改。)

1 个答案:

答案 0 :(得分:2)

您的日期格式错误。 'M'应该是月份的资本:Format="MM/dd/yyyy"

<ajaxToolkit: CalendarExtender ID="ceEffDate" PopupButtonID="imgCal" TargetControlID="txtEffDate" Animated="false" runat="server" Format="MM/dd/yyyy" />