Не скрывайте ошибку в фокусе
Я использую asp.net mvc с ненавязчивой проверкой, чтобы показать сообщения об ошибках на моей модели. Также с помощью помощников devexpress mvc для создания бритвенных представлений. При выполнении обратного вызова из панели обратного вызова, и он возвращается с ошибками модели, отображаются сообщения об ошибках. Из-за способа, которым мы делаем вызовы, devexpress не будет фокусироваться на элементе управления с ошибкой. Поэтому я написал функцию, чтобы найти элемент управления, если он имеет ошибки, и установить фокус
function OncbpEndCallback(s, e) {
var control = $("input[name='" + currentControl + "']");
if (!HasError(currentControl)) {
control = NextTabbable(control);
}
control.focus();
}
Проблема во многих случаях, когда я устанавливаю фокус, он удаляет сообщение проверки. Не всегда, но много времени. Как я могу предотвратить исчезновение сообщения?
1 ответ
Оказывается, использование CustomValidationAttribute было причиной. Как только я удалил это из модели, сообщение об ошибке не исчезло.