2009-04-06 10 views
0

maskededitを使用して、maskededitのajaxコントロールツールキットサンプルと同じようにしたいが、私のクライアントの日付はmaskededitのため、別のフォーマットを使用する必要があるdd-MM-yyyyと表示されます。私がする必要がある http://www.asp.net/ajax/ajaxcontroltoolkit/samples/maskededit/maskededit.aspxAjax Control ToolkitのMaskedEditに問題 - 異なるculture

:日付がDBからロードされているので、私も(私はこのコードの作業を得れば、それはある)、そもそもそこに価値を置くために、このサンプルでは

ルックを必要としますラベルされたテキストボックスのように同じことを行う「と入力します日付(形式:99/99/9999):」

私は、サンプルコードをダウンロードし、フォーマットを変更する「99-99-9999」関連のコードで:

ただし、サンプル日付「12-12-1999」はテキストボックスに表示されません。何故なの?

私が間違っていることを理解できません。私はまた、cultureNameをda-DKに設定しようとしましたが、チャンスはありませんでした。私はまた、Chrome、Firefox、IE7、同じ動作を試しました...

どうすればこの問題を解決できますか?

<asp:TextBox ID="TextBox5" runat="server" Width="130px" MaxLength="1" style="text-align:justify" ValidationGroup="MKE">12-12-1999</asp:TextBox> 
    <asp:ImageButton ID="ImgBntCalc" runat="server" ImageUrl="~/images/Calendar_scheduleHS.png" CausesValidation="False" /> 
    <ajaxToolkit:MaskedEditExtender ID="MaskedEditExtender5" runat="server" 
     TargetControlID="TextBox5" 
     Mask="99-99-9999" 
     MessageValidatorTip="true" 
     OnFocusCssClass="MaskedEditFocus" 
     OnInvalidCssClass="MaskedEditError" 
     MaskType="Date" 
     DisplayMoney="Left" 
     AcceptNegative="Left" 
     ErrorTooltipEnabled="True" /> 
    <ajaxToolkit:MaskedEditValidator ID="MaskedEditValidator5" runat="server" 
     ControlExtender="MaskedEditExtender5" 
     ControlToValidate="TextBox5" 
     EmptyValueMessage="Date is required" 
     InvalidValueMessage="Date is invalid" 
     Display="Dynamic" 
     TooltipMessage="Input a date" 
     EmptyValueBlurredText="*" 
     InvalidValueBlurredMessage="*" 
     ValidationGroup="MKE" /> 

答えて

1

。 これは、次のとおりです。

ValidationExpression="(((((0[1-9])|(1\d)|(2[0-8]))\/((0[1-9])|(1[0-2])))|((31\/((0[13578])|(1[02])))|((29|30)\/((0[1,3-9])|(1[0-2])))))\/((20[0-9][0-9])|(19[0-9][0-9])))|((29\/02\/(19|20)(([02468][048])|([13579][26]))))" 

そしてMaskedEditExtenderMaskType="none"を置くインチ
OKを確認してください。

0
<asp:TextBox ID="TextBox5" runat="server" Width="130px" MaxLength="10" style="text-align:justify" ValidationGroup="MKE" Text="12-12-1999"></asp:TextBox> 

私はあなたが実際のテキスト属性にテキストを移動する場合、それは違いを作るならば...私はAjaxToolkit他の賢明なの最新バージョンを持っていない私はそれをしようと疑問に思って私の自己...ああ私はちょうどあなたの最大長が本当に1に設定されていることに気づいたか、またはコピーと貼り付けのエラーですか?それも問題を引き起こすでしょう。

+0

maxlengthは実際にはそこのエラーですが、残念ながら私の問題の原因はありませんでした。私はテキスト属性のテキスト値を設定しようとしました。 – Kjensen

3

私はこの問題を修正しましたが、あなたはUserDateFormat="DayMonthYear"を使って試しましたか?私はdd/MM/yyyは非常に良いですuserDateFormat Date型を置き換えるMaskedEditValidatorValidationExpressionを使用

UserDateFormat="DayMonthYear" 

<asp:TextBox ID="TextBox5" runat="server" Width="130px" MaxLength="1" style="text-align:justify" ValidationGroup="MKE">12-12-1999</asp:TextBox> 
<asp:ImageButton ID="ImgBntCalc" runat="server" ImageUrl="~/images/Calendar_scheduleHS.png" CausesValidation="False" /> 
<ajaxToolkit:MaskedEditExtender ID="MaskedEditExtender5" runat="server" 
    TargetControlID="TextBox5" 
    Mask="99-99-9999" 
    MessageValidatorTip="true" 
    OnFocusCssClass="MaskedEditFocus" 
    OnInvalidCssClass="MaskedEditError" 
    MaskType="Date" 
    DisplayMoney="Left" 
    AcceptNegative="Left" 
    ErrorTooltipEnabled="True" **UserDateFormat="DayMonthYear"** /> 
<ajaxToolkit:MaskedEditValidator ID="MaskedEditValidator5" runat="server" 
    ControlExtender="MaskedEditExtender5" 
    ControlToValidate="TextBox5" 
    EmptyValueMessage="Date is required" 
    InvalidValueMessage="Date is invalid" 
    Display="Dynamic" 
    TooltipMessage="Input a date" 
    EmptyValueBlurredText="*" 
    InvalidValueBlurredMessage="*" 
    ValidationGroup="MKE" />