Asp.net mvc ASP.NET MVC 3中的远程验证
我试图让远程验证在ASP.NET MVC 3中工作,但由于某些原因,验证从未被触发。我从控制器返回json,在FireFox中,它要求我下载文件。不知道这里发生了什么。这是我的密码:Asp.net mvc ASP.NET MVC 3中的远程验证,asp.net-mvc,Asp.net Mvc,我试图让远程验证在ASP.NET MVC 3中工作,但由于某些原因,验证从未被触发。我从控制器返回json,在FireFox中,它要求我下载文件。不知道这里发生了什么。这是我的密码: @using(Html.BeginForm(new {Action = "ValidateUserName"})) { <text> Enter UserName: </text> @Html.TextBoxFor(x => x.UserName) <input type=
@using(Html.BeginForm(new {Action = "ValidateUserName"})) {
<text> Enter UserName: </text> @Html.TextBoxFor(x => x.UserName)
<input type="submit" value="Login" />
}
这是HomeController:
public ActionResult ValidateUserName(RegistrationViewModel registrationViewModel)
{
return Json(!registrationViewModel.UserName.Equals("test"),JsonRequestBehavior.AllowGet);
}
需要考虑以下几点: 1) 在您看来,您应该参考jquery验证和不引人注目的javascript库:
<script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")" type="text/javascript"></script>
3) 最后,确保在web.config文件中有两个AppSettings来启用客户端验证
<appSettings>
<add key="ClientValidationEnabled" value="true"/>
<add key="UnobtrusiveJavaScriptEnabled" value="true"/>
</appSettings>
@Html.ValidationMessageFor(x => x.UserName)
<appSettings>
<add key="ClientValidationEnabled" value="true"/>
<add key="UnobtrusiveJavaScriptEnabled" value="true"/>
</appSettings>