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 に追加しないようにするにはどうすればよいですか?
ありがとう。