0

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

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

<%@ 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>

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

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

4

1 回答 1

2

您的日期格式错误。'M' 应该是这样的月份的大写字母:Format="MM/dd/yyyy"

<ajaxToolkit: CalendarExtender ID="ceEffDate" PopupButtonID="imgCal" TargetControlID="txtEffDate" Animated="false" runat="server" Format="MM/dd/yyyy" />
于 2013-02-11T16:30:51.547 回答