0

以下のコードでは、日付を選択した後、日付がデフォルト値にリセットされます。

ポストバックで現在の日付を設定したので、この問題を解決するには、

      <asp:TextBox ID="ExpiryDateTxt" CssClass="textbox" AutoPostBack="true"    ReadOnly="true" runat="server"></asp:TextBox>  

       <ajaxToolkit:CalendarExtender   
               ID="startCalendarExtender"   Format="MM/dd/yyyy"
                TargetControlID="ExpiryDateTxt"   
                runat="server" /> 

     protected void Page_Load(object sender, EventArgs e)
     {
          if (!IsPostBack)
          {
                ExpiryDateTxt.Text =DateTime.Now.AddDays(1.0).ToString("yyyy-MM-dd hh:mm:ss");
           }
     }
4

1 に答える 1

2

ReadOnly="true" がこの問題を引き起こしていると思います。

javascript を使用してテキストボックスを読み取り専用にすることができます

    <script src="Scripts/jquery-1.4.1.min.js" type="text/javascript"></script>     
    <asp:TextBox ID="ExpiryDateTxt" AutoPostBack="true" CssClass="textbox read-only" runat="server"></asp:TextBox>  

    <cc1:CalendarExtender
        ID="startCalendarExtender" Format="MM/dd/yyyy"
        TargetControlID="ExpiryDateTxt"   
        runat="server" /> 

     <script type="text/javascript">
        $(document).ready(function () {
             $('.read-only').attr("readonly", "readonly");
        });
     </script>
于 2012-12-31T09:40:29.920 に答える