我想驗證登錄頁面上的用戶輸入。 我有我User mode
有:ASP.MVC客戶端驗證不起作用
- 用戶名字符串
- 串密碼
我決定延長與部分類我的DB模式:
[MetadataType(typeof(User))]
public partial class User : IUser
{
}
public interface IUser
{
[Required(ErrorMessage = "Login is required")]
string UserName { get; set; }
[Required(ErrorMessage = "Password is required")]
string Password { get; set; }
}
而且我view
:
@using (Html.BeginForm("Login", "Account", FormMethod.Post))
{
@Html.ValidationSummary(true)
@Html.TextBoxFor(model => model.UserName, new { size = 30, @placeholder = "Login",
@class = "credential" })
@Html.ValidationMessageFor(model => model.UserName)
@Html.PasswordFor(model => model.Password, new { size = 30, @placeholder =
"Password", @class = "credential" })
@Html.ValidationMessageFor(model => model.Password)
}
而不是客戶端驗證,它使模型中的空值回發和崩潰。
HtmlHelper.ClientValidationEnabled = true;
HtmlHelper.UnobtrusiveJavaScriptEnabled = true;
到視圖頂部,確信腳本加載:
<script src="@Url.Content("~/Scripts/jquery-1.8.3.min.js")"></script>
<script src="@Url.Content("~/Scripts/jquery.validate.min.js")"></script>
<script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")"></script>
我缺少什麼?
在瀏覽器中是否有任何錯誤? –
沒有任何錯誤,它在'Model.Designer.cs'中崩潰,並且不會通過'ModelState.IsValid'通過 – makambi
http://www.codeproject.com/Articles/275056/Custom-Client-Side-Validation- in-ASP-NET-MVC3 –