C#WebFrom六大验证及使用方法

C#包含有六种验证方式,分别为:

      一、非空验证  RequiredFieldValidator.

      二、对比验证 CompareValidator.

      三、范围验证 RangeValidator.

      四、正则表达式验证 RegularExpressionValidator.

      五、验证汇总 ValidationSummary.

      六、自定义验证.

两个应用技巧:


1.防止按钮激发验证控件。
默认情况下,3类按钮都会激发验证。
如果不想激发验证:给按钮的CauseValidation=false

2.验证分组的问题。
把输入控件(文本框,单选,多选)、验证控件(非空,对比,范围,正则,自定义,汇总)、按钮的ValidationGroup属性设成相同的值。

它们就变成一组了。

使用验证空间首先需要修改的三个属性(六大验证方式通用):

1.ErrorMessage:验证失败显示的错误信息

2.Display:验证程序的显示方式--一般情况下为Dynamic动态显示(验证失败显示).

3.CotrolToValidate:要验证的控件ID(例如:验证TextBox中账号的内容,CotorlToValidate就填该TextBox的ID).

不同的属性:

一、非空验证  RequiredFieldValidator.

InitialValue - 验证的初始值,被验证控件的值与此值相同的话,就认为是空

例如:文本框里面的(必填)两个字

二、对比验证 CompareValidator.

ControlToCompare - 要对比的控件的ID

ValueToCompare - 要对比的值

Operator - 对比的运算符

Type - 输入的对比类型

三、范围验证 RangeValidator.

MaximumValue - 范围的上限
MinimumValue - 范围的下限
Type - 类型

四、正则表达式验证 RegularExpressionValidator.

ValidationExpression - 验证表达式(也可自己定义)

五、验证汇总 ValidationSummary.

ShowMessageBox - 是否以对话框的形式显示汇总的错误信息
ShowSummary - 是否在页面上显示汇总的错误信息

六、自定义验证.---自定义验证被认为是功能最强大的验证方式

必填信息:

ErrorMessage - 验证出错后的提示信息

ControlToValidate - 要验证的控件的ID

Display - 显示方式。Static-不显示也占空间。Dynamic-不显示不占空间

ClientValidationFunction - 客户端验证函数的函数名。(不要加括号)

客户端验证函数的规范:
function 函数名(事件源,事件数据)
{
事件数据.Value -- 要被给证的值。该验证控件所要验证的那个输入框中的值。
事件数据.IsValid -- 告诉验证控件,验证是否通过。
}

案例:

复制代码
      <script language="javascript">
        function zhiShu(a, b) {      //a-事件源,b-事件数据
            //主要用到的就是b
            //b.Value-获得该验证控件所要验证的那个控件的值。将要被验证的值。
            //b.IsValid-告诉浏览器,验证是否通过。true-通过.false-不通过(把ErrorMessage显示出来,阻止提交)。
            //步骤
            //1.把要被验证的值取出来。
            var s = b.Value;
            //2.进行验证
            var isOK = false;
            if (isNaN(s) == false) {        //首先要看是不是个数字
                var zc = 0;                 //取余为0的个数
                var num = parseInt(s);     //转化成整数计算
                for (var i = 1; i <= num; i++) {    //从1开始到数值本身,挨个整除,如果能被整除就记录一下zc++;
                    if (num % i == 0) {
                        zc++;
                    }
                }
                if (zc == 2) {
                    isOK = true;
                }
                else {
                    isOK = false;
                }
            }
            else {
                isOK = false;
            }

            //3.告诉验证控件是否验证通过。
            b.IsValid = isOK;
        }
    </script>
复制代码
原文地址:https://www.cnblogs.com/IT1517/p/4768341.html