我被要求創建一個登錄表單,當用戶輸入沒有通過驗證時,它彈出一個警告框。MVC3 Razor JQuery客戶端驗證和附加警報框
我有一切使用基於模型驗證連線。
例如:
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"/>
}
一個我嘗試的一件事是
<script language="javascript">
$(document).ready(function() {
$("#loginForm").validate({
invalidHandler: function (form, validator) {
var errors = validator.numberOfInvalids();
if (errors) {
alert(errors);
}
}
});
});
</script>
我無法弄清楚如何使這項工作。我只想讓正常的驗證和錯誤顯示,但有機會做更多。