1

ビューモデルでいくつかの検証があります:

[Required(
    AllowEmptyStrings = false,
    ErrorMessageResourceType = typeof(Resources.ValidationMessages),
    ErrorMessageResourceName = "invalid_cellphoneNumber")]
    [RegularExpression(@"^[1-9]{1}[0-9]{7}$")]
public string CellphoneNumber { get; set; }

そして、これは正規表現とエラーメッセージで機能します。私のマークアップには、これがあります:

@Html.TextBoxFor(m => m.CellphoneNumber, new { id = "mobile", type = "tel"})

inputこれにより、要素が生成されます。サーバー側だけでなくクライアント側も実行できるように、適切な JavaScript も含めました。問題は次のとおりです。無効なものを書き込むと、mvc が独自のエラー メッセージを作成したようです。

The field CellphoneNumber must match the regular expression '^[1-9]{1}[0-9]{7}$'.、私が定義したものを使用する代わりに。エラーメッセージを表示する唯一の方法は、フィールドが空でフォームを送信しようとするか、フォームに書いた内容を消去しようとすると、私のメッセージに変わります。

生成されたinput要素は次のようになります。

<input data-val="true" data-val-regex="The field CellphoneNumber must match the regular expression '^[1-9]{1}[0-9]{7}$'." data-val-regex-pattern="^[1-9]{1}[0-9]{7}$" data-val-required="Cellphone number not valid" id="mobile" name="CellphoneNumber" type="tel" value="" class="input-validation-error">.

誰でも助けることができますか?

4

1 に答える 1

1

ErrorMessageResource...プロパティはValidation Attribute ごとです。RegularExpression恐れ入りますが、 validation 属性にも再度指定していただく必要があります。

于 2013-05-16T11:14:55.660 に答える