使用自定义验证控件验证用户的输入字数

<asp:CustomValidator ID="cvRemark" runat="server" ControlToValidate="txtRemark" Display="None"
            ClientValidationFunction="RemarkAreaValidation" ErrorMessage="描述限制在1000个汉字以内!<br/>"
            ValidationGroup="Save"></asp:CustomValidator>

     //验证文本框字数长度(自定义函数)
            function RemarkAreaValidation(source, arguments) {
                arguments.IsValid = checkInputLength(arguments.Value, 2000);
            }
            function checkInputLength(strInput, intLenLimit) {
                var byteLength = 0;
                for (var i = 0; i < strInput.length; i++) {
                    var ch = strInput.charAt(i);

       //判断输入的是汉字还是字符
                    if (isNormalChar(ch))
                        byteLength += 1;
                    else
                        byteLength += 2;
                }
                if (byteLength > intLenLimit)
                    return false;
                return true;
            }

            function isNormalChar(ch) {
                if (ch.length > 1) {
                    return false;
                }
                if (ch == "") {
                    return true;
                }

                var pattern = /^([\uFF66-\uFF9F]|[\u0000-\u00FF])*$/gi;
                if (pattern.test(ch)) {
                    return true;
                }
                else {
                    return false;
                }
            }

原文地址:https://www.cnblogs.com/ywblog/p/2167763.html