Я хотел бы изменить поведение по умолчанию проверки на стороне клиента, которую использует ASP.NET MVC 3, следующим образом:
Если есть ошибка, я не хочу, чтобы в HTML добавлялся какой-либо диапазон, чтобы показать мне мою ошибку. Единственное, что я хочу, это изменить цвет поля ввода, в котором есть ошибка.
Я не знаю, является ли это "правильным" способом сделать это, но это то, что я уже сделал:
Я отредактировал jquery.validate.unobtrusive.js:
function onError( error, inputElement )
{ // 'this' is the form element
var container = $( this ).find( "[data-valmsg-for='" + inputElement[0].name + "']" ),
replace = $.parseJSON( container.attr( "data-valmsg-replace" ) ) !== false;
container.removeClass( "field-validation-valid" ).addClass( "field-validation-error" );
inputElement.addClass( "custom-validation-error" ); // <--------- this is my edit
error.data( "unobtrusiveContainer", container );
if( replace )
{
container.empty();
error.removeClass( "input-validation-error" ).appendTo( container );
}
else
{
error.hide();
}
}
Это добавляет только класс с именем custom-validation-error, который меняет цвет поля ввода. Но как удалить этот класс, если все ок?
И как мне перестать добавлять промежутки в мой HTML?
Спасибо.