繁体   English   中英

MVC 3远程验证不触发

[英]mvc 3 remote validation not firing

我试图在MVC 3中第一次使用远程数据注释。我缺少一些简单的东西。 该安装程序根本没有触发控制器的动作,而且我也没有看到这个问题。

我正在尝试验证用户名的唯一性。

这是代码设置。

查看代码

@Html.Raw(Html.Script("jquery.validate.min.js"))
@Html.Raw(Html.Script("jquery.validate.unobtrusive.min.js"))

<tr>
            <td class="editor-label">@Html.LabelFor(model => model.UserName):</td>
            <td  class="editor-field">@Html.EditorFor(model => model.UserName)</td>
            <td>@Html.ValidationMessageFor(model => model.UserName)</td>
        </tr>

ViewModel代码

    [DisplayName("Username")]
    [StringLength(100)]
    [Remote("CheckIfUsernameExists", "UserProfile", ErrorMessage = "This username is taken. Please enter a different user name.")]
    public string UserName { get; set; }

控制器代码

[HttpGet]
        public JsonResult CheckIfUsernameExists(string userName)
        {
            return Json("false");
        }

检查您的设置,客户端验证和不打扰应启用

<appSettings>
    <add key="ClientValidationEnabled" value="true" />
    <add key="UnobtrusiveJavaScriptEnabled" value="true" />
  </appSettings>

与以下代码应该工作

    [Get]
    public JsonResult CheckIfUsernameExists(string userName)
    {
        return Json(false,JsonRequestBehavior.AllowGet);
    }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM