ユーザー入力が検証に合格しない場合に警告ボックスが表示されるログインフォームを作成するように求められています。
モデルベースの検証を使用してすべてを接続しました。
元:
public class LogonViewModel
{
[Required( ErrorMessage = "User Name is Required")]
public string UserName { get; set; }
[Required( ErrorMessage = "Password is required")]
public string Password { get; set; }
}
ページに検証の概要があります。
Html.ValidationSummary()
ユーザーが JavaScript をオフにしている場合に備えて、概要をページに表示したいと思います。しかし、クライアント側の検証が発生した場合は、検証イベントもキャッチし、求められているようにエラーをアラート ボックスに入れたいと考えています。
私のフォームは基本的に...
@Html.ValidationSummary()
@using (Html.BeginForm(null, null, FormMethod.Post, new { id = "loginForm" }))
{
username: @Html.TextBoxFor(m => m.UserName) <br/>
password: @Html.TextBoxFor(m => m.Password) <br/>
<input type="submit" value="Login"/>
}
私が試したことの1つは
<script language="javascript">
$(document).ready(function () {
$("#loginForm").validate({
invalidHandler: function (form, validator) {
var errors = validator.numberOfInvalids();
if (errors) {
alert(errors);
}
}
});
});
</script>
これを機能させる方法がわかりません。通常の検証とエラーの表示を許可したいだけですが、もう少し行う機会があります。