B/S----验证方式及练习

验证:
一、RequiredFieldValidator:非空验证
ErrorMessage:验证出错时显示的错误信息
ControlToValidate:要验证的控件ID
Display:呈现模式。Static-静止,不显示也会占空间。Dynamic-动态,不显示不占空间
InitialValue:控件的初始值,如果验证出来的值与初始值相同,则也是判断为空

两种非空的形式:
1.什么内容都没有
    ErrorMessage,ControlToValidate,Display
2.初始值没变
    ErrorMessage,ControlToValidate,Display,InitialValue

二、CompareValidator:对比验证
ErrorMessage:验证出错时显示的错误信息
ControlToValidate:要验证的控件ID
Display:呈现模式。Static-静止,不显示也会占空间。Dynamic-动态,不显示不占空间
ControlToCompare:要对比的控件的ID
ValueToCompare:要对比的某个固定的值
Operator:运算符
Type:输入和比较的类型

两种对比的形式:
1.两个控件的值进行对比。——密码与确认密码
2.控件的值与某个固定对比。——月收入要大于0

两种对比的形式:
1.等值对比。——是否相等 。Operator=Equeal(默认)
2.不等值对比。——是否满足某个关系。Operator=GreaterThan,LessThan.....

三、RangeValidator,范围验证:    
ErrorMessage:验证出错时显示的错误信息
ControlToValidate:要验证的控件ID
Display:呈现模式。Static-静止,不显示也会占空间。Dynamic-动态,不显示不占空间
MaximumValue:范围上限值
MinimumValue:范围的下限值
Type:输入和验证的类型

案例:生日只能在1900-1-1 至2099-12-31之间

四、RegularExpressionValidator_正则表达式验证。
ErrorMessage:验证出错时显示的错误信息
ControlToValidate:要验证的控件ID
Display:呈现模式。Static-静止,不显示也会占空间。Dynamic-动态,不显示不占空间
ValidationExpression:验理证的正则表达式。

五、CustomValidator:自定义验证
ErrorMessage:验证出错时显示的错误信息
ControlToValidate:要验证的控件ID
Display:呈现模式。Static-静止,不显示也会占空间。Dynamic-动态,不显示不占空间
ClientValidationFunction :用来进行自定义验证的客户端的JS函数名(注意不要加括号)sushuyanzheng

客户端验证函数的定义
function 函数名(a,b)
{
            //b.Value - 被验证控件中的值。
            //b.IsValid - 告诉浏览器,验证是否通过了。true-通过了,不显示错误信息。false-没有通过,显示错误信息。
}
例子:验证素数。
<script language="javascript">
        function sushuyanzheng(a, b) {

            var n = parseInt(b.Value);
            var c = 0;
            for (var i = 1; i <= n; i++) {
                if (n % i == 0) {
                    c++;
                }
            }
            if (c == 2) {
                b.IsValid = true;
            }
            else {
                b.IsValid = false;
            }
        }
</script>

六、ValidationSummary:验证汇总控件
ShowMessageBox:是否用对话框显示错误 信息
ShowSummary:是否在页面上显示错误汇总信息



几个重要的难点及解决:
1.验证分组:把输入控件、验证控件、按钮控件的ValidationGroup设成同一个值,则他们就是在一组中。

2.阻止按钮激发验证:
    法一:给按钮单独分组
    法二:把按钮的CauseValidation属性设为False

3.验证出错显示*,用对话框显示错误信息。





 实现邮箱模样的删除功能:
 第一步:把汽车表的数据显示出来。
 1.把基本数据和相关联的系列名称、厂商名称显示出来
 2.把复选框做出来。<input type='checkbox' id='cb<%#Eval("")%>' name='cb' value='<%#Eval("Code")%>'>

 第二步:做删除按钮
 1.取出选中的汽车主键
 string s = Request["cb"].ToString()
 string[] keys = s.Split(',');
 2.遍历删除

 第三步:加删除之前的脚本判断
 1.写个脚本函数。使用JS取出name=cb所有的复选框。
 2.遍历判断每个是否被选中,并记数。
 3.根据选中的记数,弹出相应的对话框。 return false,return true;
 4.在删除按钮的OnClientClick使用return xxxx()调用这个脚本函数

 第四步:删除成功后,的脚本提示。
 在按钮的Click的C#代码最后,给界面上的Literal的Text赋值。传一个JS对话框的脚本代码过去。

练习:

 var query = _context.zhuceng.Where(p => p.userID == txtUID.Text);
        zhuceng data = query.FirstOrDefault();//获取空的元素
        if (data == null)
        {
            Label1.Text = "此ID可用";
        }
        else
        {
            Label1.Text = "此ID已经注册";
        }

原文地址:https://www.cnblogs.com/likaixuan/p/4551782.html