2

データ注釈の検証で jQuery カスタム日付ピッカーを使用しているときに問題が発生しました。

これは私のメタデータです

[Display(Name = "DOB")]
[Required(ErrorMessage = "Please enter {0}")]
[DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:dd/MM/yyyy}")]
public DateTime MyDate { get; set; }

これが私の見解です。

 $(function () {
 $("#MyDate").datepicker({ dateFormat: 'dd/mm/yy' });
 });

@Html.LabelFor(model => model.MyDate)
@Html.EditorFor(mode => mode.MyDate)
@Html.ValidationMessageFor(model => model.MyDate)

たとえば、日付を選択すると、31/12/2012エラーが表示されますThe value '31/12/2001' is not valid for DOB .

mm/dd/yyyy( 12/31/2012) のような入力をすると、受け入れられます。

だから私が欠けているもの、誰か助けてもらえますか?

4

2 に答える 2

0

データをどのように投稿していますか?Web APIを使用していますか?

クライアント側とサーバー側の日付形式には、ある種の競合があると思います。

DatePickerインターフェイスを使用して(手動で日付を入力するのではなく)日付を選択する場合、どの形式で日付が選択されますか?

webconfigでこれを設定してみてください

<configuration>
  <system.web>
    <globalization culture="en-GB" uiCulture="en-GB"/>
  </system.web>
</configuration>

それが機能するかどうかを確認します。

jqueryプラグインを使用するときに私がいつも使用するもう1つの選択肢は、jQueryValidityです

于 2012-11-26T06:15:12.607 に答える
0

私自身の質問に答えます。

このスレッドで答えを見つけました。以下の文化と UI 文化コードを追加する必要があります。web.config

<globalization uiCulture="en" culture="en-GB" />
于 2012-11-26T14:18:54.103 に答える