0

日付を受け入れる 2 つのテキスト ボックスがあります。2 番目のテキスト ボックスに入力された日付 >= 最初のテキスト ボックスに入力された日付かどうかを確認する比較バリデータを使用しました。

<table>
    <tr>
        <td>
            <asp:Label runat="server" ID="lblDate" Width="200px" Text="Date Posted:"></asp:Label></td>
        <td>
            <asp:TextBox ID="txtDatePosted" runat="server" Width="200px" CausesValidation="true"></asp:TextBox>
            <asp:Image ID="Image1" runat="server" Width="16px" AlternateText="" ImageUrl="~/Image/cal.jpg" Height="16px" />
            <ajaxToolkit:CalendarExtender ID="calExtDatePost" runat="server" Format="dd/MM/yyyy" PopupButtonID="btnCalenderPopup" PopupPosition="TopRight" TargetControlID="txtDatePosted" />
        </td>
    </tr>
    <tr>
        <td>
            <asp:Label runat="server" ID="lblExpiryDate" Width="200px" Text="Expiry Date:"></asp:Label></td>
        <td>
            <asp:TextBox ID="txtExpdate" runat="server" Width="200px" CausesValidation="true"></asp:TextBox>
            <asp:Image ID="Image2" runat="server" Width="16px" AlternateText="" ImageUrl="~/Image/cal.jpg" Height="16px" />
            <ajaxToolkit:CalendarExtender ID="CalendarExtender1" runat="server" Format="dd/MM/yyyy" PopupButtonID="btnCalenderPopup" PopupPosition="TopRight" TargetControlID="txtExpdate" />
            <asp:CompareValidator ID="CompareValidator1" runat="server" ErrorMessage="Expiry date must be greater than Posted date" ControlToCompare="txtDatePosted" ControlToValidate="txtExpdate" Operator="GreaterThanEqual" ValidationGroup="vsNewUser" Type="Date" Text="*Expiry date must be greater than Posted date"></asp:CompareValidator>
        </td>
    </tr>
</table>

しかし、バリデータは機能していません。常にエラーメッセージが表示されています。私を助けてください。

比較バリデーターが以下の形式を取ることはわかっています。

2001/1/1

2001 年 1 月 1 日

2012 年 5 月 4 日

これら 2 つのテキスト ボックスは、「27/07/2013」のような形式の日付を受け入れます。

4

1 に答える 1

0

問題は Ajax Control Toolkit にはありません。

プロパティをCompareValidator使用して文字列を日付に変換する方法を決定するため、コードが機能していません。、および日付形式をサポートしています。System.Globalization.DateTimeFormatInfo.CurrentInfo.ShortDatePatternCompareValidatorymdmdydmy

問題を解決するには、に等しいPage.Cultureプロパティを明示的に指定する必要があります。たとえば。DateTimeFormatInfo.CurrentInfo.ShortDatePatterndd/MM/yyyyen-GB

于 2013-07-28T11:50:34.357 に答える