网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

MVC3----自定义客户端验证

1,自定义验证类:

10年积累的网站制作、成都网站制作经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先建设网站后付款的网站建设流程,更有黄南州免费网站建设让你可以放心的选择与我们合作。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.ComponentModel.DataAnnotations;
using System.Web.Mvc;


namespace SchoolManageDomw.Models
{
    public class ZDMaxLength : ValidationAttribute,IClientValidatable
    {
        private int MaxLength;
        public ZDMaxLength(int maxlength)
            : base("{0}字符长度过长")
        {
            this.MaxLength = maxlength;
        }

        /// 
        /// 服务端验证方法
        /// 
        /// 
        /// 
        /// 
        protected override ValidationResult IsValid(object value, ValidationContext validationContext)
        {
            if (value != null)
            {
                if (Convert.ToInt32(value.ToString().Length) > MaxLength)
                {
                    return new ValidationResult(FormatErrorMessage(validationContext.DisplayName));
                }
            }
            return ValidationResult.Success;
        }



        #region IClientValidatable 成员
        /// 
        /// 实现IClientValidatable接口。客户端验证方法
        /// 
        /// 
        /// 
        /// 
        public IEnumerable GetClientValidationRules(ModelMetadata metadata, ControllerContext context)
        {
            var rule = new ModelClientValidationRule();
            rule.ErrorMessage = FormatErrorMessage("客户端" + metadata.GetDisplayName());
            rule.ValidationType = "zdmaxlength";
            rule.ValidationParameters.Add("maxlength", MaxLength);
            yield return rule;
        }

        #endregion
    }
}

2,使用自定义验证类:

[ZDMaxLength(3)]
public string Name { get; set; }

3,视图代码:

①:需要引用两个脚本和一个自定义脚本:

②:zd.js

////代码提示
///
///
///

//zdmaxlength:验证器名称,需要匹配ValidationType
//value:输入值
//element:输入元素
//zdmaxlength:验证参数
$.validator.addMethod("zdmaxlength", function (value, element, zdmaxlength) {
    if (value) {
        if (value.toString().length > zdmaxlength) {
            alert(value.toString().length + "." + zdmaxlength);
            return false;
        }
    }
    return true;
});
$.validator.unobtrusive.adapters.addSingleVal("zdmaxlength", "maxlength");

网站栏目:MVC3----自定义客户端验证
文章网址:http://bjjierui.cn/article/igecep.html

其他资讯