MVC验证用户已存在的简单演示

在控制器中为用户名是否存在写一个action方法

        /// <summary>
        /// 新增时判断用户名是否已有
        /// </summary>
        /// <param name="UName">传入参数必须和HTML控件生成的name一致,如由UName属性生成的控件,传入参数不能写成userName</param>
        /// <returns></returns>
        public ActionResult checkUName(string UName) 
        {
            bool result = false;
            //这里写检测逻辑
            var list = db.TJUser.Where(u => u.UName.Equals(UName));
            if (list == null || !list.Any())
            {
                result = true;//如果查询集合为空,则说明用户名不存在,可以新增
            }
            return Json(result, JsonRequestBehavior.AllowGet);
        }

在Model中为对应的类字段设置Remote验证,需要使用System.Web.Mvc命名空间

        [System.Web.Mvc.Remote("checkUName","userManager",ErrorMessage="用户名已存在")]
        public string UName { get; set; }

在View中用Html.TextboxFor或Html.EditorFor生成input控件,用Html.ValidationMessageFor生成错误提示信息

@Html.TextBoxFor(model => model.UName, new {@class = "input-text lh25" })
@Html.ValidationMessageFor(model => model.UName)

还需要注意两个操作:

1、在View页面中引入Scripts文件夹下的两个验证脚本

<script src="~/Scripts/jquery.validate.min.js"></script>
<script src="~/Scripts/jquery.validate.unobtrusive.min.js"></script>

2、在Web.Config文件中启用客户端验证,在appSettings中增加两个键值对

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

运行效果示例:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值