val*_*lik 5 validation asp.net-mvc
我有一个输入
@Html.TextBoxFor(m => m.Buyer.Email, new { @maxlength = "100" })
Run Code Online (Sandbox Code Playgroud)
我想用远程属性验证它
[Remote("IsUserNameAvailable", "Validation")]
public string Email { get; set; }
Run Code Online (Sandbox Code Playgroud)
在验证控制器中,我有一个动作:
[HttpPost]
public JsonResult IsUserNameAvailable(string Email)
Run Code Online (Sandbox Code Playgroud)
但是,我当然在Email参数中得到一个空值.我应该将哪个参数名称传递给IsUserNameAvailable方法?
更新:刚查看了请求,即发送到远程验证操作: http:// myhost/Validation/IsUserNameAvailable?Buyer.Email = test@test.test 参数名称是Buyer.Email,我应该如何将其传递给函数?
使用 HttpGet 代替 HttpPost。您没有发布任何内容。您正在检索结果。其次,请确保当您从 IsUserNameAvailable 返回结果时指定允许 JSON 获取。
[HttpGet]
public JsonResult IsUserNameAvailable(string Email)
{
// Do something
if (your_email_check_returns_true)
{
return Json(true, JsonRequestBehavior.AllowGet);
}
return Json(false, JsonRequestBehavior.AllowGet);
}
Run Code Online (Sandbox Code Playgroud)