Проверка поля TextArea в Asp.Net MVC - PullRequest
0 голосов
/ 11 октября 2018

Может ли кто-нибудь предложить проверку поля текстовых областей в asp.net mvc.Я пробовал много способов, но не повезло

Мой просмотр для текстовой области:

@Html.TextAreaFor(m => m.EmailTemplate, new { rows = "10", cols = "150", @class = "form-control", @id = "Email", required = "required", @maxlength = "10000" }) 
@Html.ValidationMessagefor(m => m.EmailTemplate, new { @class = "text-danger"}); 
@Html.ValidationMessage("CustomError", new { @class = "text-danger" })

Моя модель:

[AllowHtml] 
[Required(ErrorMessage ="Email Template is required")] 
public string EmailTemplate { get; set; }


Ответы [ 2 ]

0 голосов
/ 15 октября 2018

Для проверки TextAreaFor в модели я применил атрибут "[DataType (DataType.MultilineText)]" , чтобы он работал.

Модель

public class DemoModel
{
    [Required(ErrorMessage = "Required")]
    [AllowHtml]
    [DataType(DataType.MultilineText)]

    public string EmailTemplate { get; set; }
}

Вид

@model WebRedis.Models.DemoModel
@{
    Layout = null;
}
<link href="~/Content/bootstrap.css" rel="stylesheet" />
<script src="~/Scripts/jquery-1.10.2.min.js"></script>
<script src="~/Scripts/jquery.validate.js"></script>
<script src="~/Scripts/jquery.validate.unobtrusive.js"></script>
<!DOCTYPE html>

<html>
<head>
    <meta name="viewport" content="width=device-width" />
    <title>Index1</title>
</head>
<body>
    <div class="container">
        @using (Html.BeginForm())
        {
            <div>
                @Html.LabelFor(m => m.EmailTemplate)
                <br />
                @Html.TextAreaFor(m => m.EmailTemplate, new { rows = "10", cols = "150", @class = "form-control", @maxlength = "10000" })
                @Html.ValidationMessageFor(m => m.EmailTemplate, "", new { @class = "text-danger" })
            </div>
            <input id="Submit1" type="submit" value="submit" />
        }
    </div>
</body>
</html>

Выход

enter image description here

0 голосов
/ 11 октября 2018

Изменить

@Html.ValidationMessagefor(m => m.EmailTemplate, new { @class = "text-danger"}); 

На

@Html.ValidationMessageFor(m => m.EmailTemplate, null, new { @class = "text-danger"})

В качестве второго параметра @Html.ValidationMessageFor принимает необязательное сообщение проверки (используйте ноль или ""), а третий параметр принимает атрибуты htmlAttributes@class и т. Д.

...