Я реализовал это раньше таким же образом, как предлагал @jdmonty, добавив теги привязки к каждому атрибуту ErrorMessage RFV. В конце концов мне это показалось слишком утомительным, поэтому я набросал jQuery, чтобы сделать работу за меня. Этот фрагмент обернет ваши сообщения проверки в якорные теги с href=#targetControl
, который, конечно, при щелчке прокручивается до целевого ввода.
Добавьте это к $ (document) .ready (); часть кода вашего скрипта.
var validators = Page_Validators; // returns collection of validators on page
$(validators).each(function () {
//get target control and current error validation message from each validator
var errorMsg = $(this).context.errormessage;
var targetControl = $(this).context.controltovalidate;
var errorMsgWithLink = "<a href='#" + targetControl + "'> " + errorMsg + "</a>";
//update error message with anchor tag
$(this).context.errormessage = errorMsgWithLink;
});
Вы можете добавить несколько дополнительных jQuery, поскольку @jdmonty предлагает сгладить прокрутку. Вы также можете использовать псевдокласс css ': focus' в своей таблице стилей, чтобы добавить стили для 'активных' текстовых полей ввода, что-то вроде input[type=text]:focus{background-color:red;}
, чтобы действительно подчеркнуть, когда они сфокусированы.
P.S. Я знаю, что этот вопрос старый, но я только что нашел его сегодня, когда смотрел, придумал ли кто-нибудь более изящное решение, так что для всех, кто на моем месте, идите.