1

mvc 4 アプリケーションにかみそりのページがあります。次のように、ページに単純なテキスト ボックスがあるとします。

@Html.TextBox("Email")

また

<input id="Email" name="Email" type="text" />

asp.net web forms validation controls のようなものを知っているこのフィールドのクライアント側の検証を行うにはどうすればよいですか。私はそれを必須にして、正規表現を書きたいと思っています。

4

3 に答える 3

2

私はこれを行うために使用します:

  • モデル Person.cs で:

        [StringLength(50, ErrorMessage = "El campo {0} no puede tener mas de 50 caracteres")]
        [Required(ErrorMessage = "El nombre es obligatorio")]
        public string Nombre { get; set; }
    
  • Create.cshtml ページで:

        <div asp-validation-summary="ModelOnly" class="text-danger"></div>
        <div class="form-group">
            <label asp-for="Person.Nombre" class="control-label">Nombre / Name:</label>
            <input asp-for="Person.Nombre" class="form-control" />
            <span asp-validation-for="Person.Nombre" class="text-danger"></span>
        </div>
    
于 2018-04-12T10:31:02.440 に答える
1

RequiredAttribute通常、モデル プロパティはとで装飾しますRegexAttribute

于 2012-09-29T17:30:37.650 に答える
1

Data Annotations を見たいと思うかもしれません。これらは、すべてのビュー モデルのすべてのフィールドに対して (だけでなく) 検証を定義するための非常にシンプルで直接的な方法を提供します。

次のリンクをご覧ください。

方法: DataAnnotations 属性を使用してモデル データを検証する

あなたの特定のケースでは、それは

[Required]
[RegularExpression(@"<your RegEx>", ErrorMessage = "<your message, leave out for default>")]
public string fieldYouValidating { get; set; }

多くの人が好む検証の他の方法は、流暢な検証です

RuleFor(x => x.fieldYouValidating)
        .NotEmpty()
        .WithMessage("This is the message.");

お役に立てれば

于 2012-09-29T17:40:58.297 に答える