CompareValidator,又称为“比较验证控件”,主要用于将输入控件的值与指定的常数值或其他输入控件的值按照指定的比较运算符进行比较,以判断两个值是否匹配。此外,还可以用来判断用户输入的值是否可以转换为其Type属性所指定的数据类型。
CompareValidator 控件又称为“比较验证控件”,它主要用于将输入控件的值与指定的常数值或其他输入控件的值按照指定的比较运算符(>、<、=、<>、>=及<=等)进行比较,以判断两个值是否匹配。此外,CompareValidator 控件还可以用来判断用户输入的值是否可以转换为其Type属性所指定的数据类型。
使用 CompareValidator 控件将由用户输入到输入控件(例如 TextBox 控件)的值与输入到其他输入控件的值或常数值进行比较。如果输入控件的值符合operator、ValueToCompare 及/或 ControlToCompare 属性指定的条件,CompareValidator 控件便可通过验证。
还可以使用 CompareValidator 控件来指示输入到输入控件中的值是否可以转换为 BaseCompareValidator..::.Type 属性所指定的数据类型。
通过设置 ControlToValidate 属性指定要验证的输入控件。如果要将特定输入控件与其他输入控件进行比较,请设置 ControlToCompare 属性以指定要与之比较的控件。
说明:
如果输入到 ControlToCompare 属性所指定的输入控件中的值无法转换为 BaseCompareValidator..::.Type 属性所指定的数据类型,而输入到 ControlToValidate 属性所指定的输入控件中的值可以转换,则所验证的输入控件将被视为有效。因此,您还应在 ControlToCompare 属性所指定的输入控件上放置 CompareValidator 或 RangeValidator 控件。
还可以将输入控件的值与常数值进行比较,而不是将一个输入控件的值与其他输入控件的值进行比较。通过设置 ValueToCompare 属性指定要与之比较的常数值。
说明:
如果 ValueToCompare 属性指定的值无法转换为 BaseCompareValidator..::.Type 属性指定的数据类型,将引发异常。在以编程方式将该值分配给 ValueToCompare 属性之前,一定要检查该值的数据类型。
说明:
请勿同时设置 ControlToCompare 和 ValueToCompare 属性。既可以将输入控件的值与另一个输入控件的值进行比较,也可以将其与常数值进行比较。如果同时设置了这两个属性,则 ControlToCompare 属性优先。
使用 Operator 属性指定要执行的比较的类型,如大于、等于等等。如果将 Operator 属性设置为 ValidationCompareOperator.DataTypeCheck,则 CompareValidator 控件忽略 ControlToCompare 和 ValueToCompare 属性,并且仅指示输入到输入控件中的值是否可以转换为 BaseCompareValidator..::.Type 属性指定的数据类型。
BaseCompareValidator..::.Type 属性用于指定两个比较值的数据类型。在执行比较操作前,两个值都自动转换为此数据类型。
重要说明:
当 Type 属性设置为 Date 且当前日历类型为非公历时,验证程序只执行服务器端验证。验证程序客户端脚本只支持公历日历。
下表列出了可以比较的各种数据类型。
数据类型
说明
String
字符串数据类型。
Integer
32 位有符号整数数据类型。
Double
双精度浮点数数据类型。
Date
日期数据类型。
Currency
一种可以包含货币符号的十进制数据类型。
说明:
如果输入控件为空,则不会调用任何验证函数,并且验证将成功。使用 RequiredFieldValidator 控件要求用户在输入控件中输入数据。
说明:
当使用 UpdatePanel 控件内部的 CompareValidator 控件时,请确保该验证程序控件与关联的控件位于同一面板中。有关将 UpdatePanel 控件用于部分页更新的更多信息,请参见部分页呈现概述。
有关验证控件的更多信息,请参见 BaseValidator。