2013-02-11 3 views
0

У меня есть страница aspx с главной страницей. Главная страница содержит asp: ScriptManager. AjaxToolkit aspx-страницы: CalendarExtender перестает менять месяц даты в текстовом поле. Текстовое поле, связанное с расширителем, заполняется информацией из базы данных при загрузке страницы.AJAX Calendar Extender с неверной датой

Эта страница 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> 

Существует огромное количество кода до и после этого, но это область, в которой расположены элементы управления датой.

Единственным связанным кодом является получение информации из базы данных и загрузка ее в текстовое поле. Когда вы измените дату с помощью Расширителя календаря, чтобы месяц оставался таким же в текстовом поле (день и год будут меняться.)

ответ

2

Ваш формат даты неверен. «M» должен быть капиталом за месяц следующим образом: Format="MM/dd/yyyy"

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

Это было сделано. Странно, так как я не делал там никакой работы. Я выслежу преступника! LOL –

+0

Отметьте как ответ, если это решит вашу проблему. –

+0

Вау - какая странная ошибка/особенность. Я пытался выбрать предыдущий месяц (т.е. 28 декабря 2014 года) на странице с января 2015 года, а дата появится 28 января 2014 года. Изменение формата на dd/MM/yyyy с dd/mm/yyyy исправлено. Большое спасибо :) – DB101