Из сообщений в этой теме - и невозможность разместить там вопрос по какой-то странной причине :( Я задам его здесь в надежде получить решение
Я пишу, говоря, что я должен выполнить проверку, как показано ниже.
- Я добавляю атрибут html5 (data-required-msg/validationMessage) в текстовое поле, а также требуемый атрибут.
- Я делаю диапазон для недопустимого сообщения и привязываю его к полю с атрибутом «данные для». В этом диапазоне должно появиться сообщение «Пожалуйста, введите имя».
Вопросы
- Это единственный способ работать с этим?
- Нет ли у меня возможности отобразить правильное сообщение об ошибке («Сообщение об ошибке, которое я хочу показать»), как-либо привязать к атрибутам mvc в ViewModel. Как сказал другой постер, это гораздо более масштабируемый/повторно используемый и лучший дизайн.
Использование data-for="Name" очень ненадежно, так как изменение имени поля модели не будет отражаться там, и об этом можно забыть, что приведет к доставке программного обеспечения с ошибками. Вы теряете тип безопасности чего-то вроде
@Html.ValidationMessageFor(m=> m.Name)
Код
public class AViewModel
{
[Required(ErrorMessage="Error Message I want to show")]
public string Name { get; set; }
}
<div class="validation-wrapper">
<div class="input-wrapper">
@Html.TextBoxFor(m => m.Name, new { placeholder = "eg. John Smith", data_required_msg="PleaseEnter name", required="required" } )
</div>
<span class="k-invalid-msg" data-for="Name"></span>
</div>
Привет, Дж.