ASP.NET学习手记:验证用户表单输入

运行环境:Win2000 Advance Server+IIS5.0+NGWS SDK(80M的).
其中验证email地址的函数用的是廖兄精华区中的代码.
<%@ Page Language="C#" %>

<html>
<script language="javascript">
function ClientValidateEmail(source, value)
{
  var strr;
  re=/(\w+@\w+\.\w+)(\.{0,1}\w*)(\.{0,1}\w*)/i;
  re.exec(value);
  if (RegExp.$3!=""&&RegExp.$3!="."&&RegExp.$2!=".") strr=RegExp.$1+RegExp.$2+RegExp.$3
  else
    if (RegExp.$2!=""&&RegExp.$2!=".") strr=RegExp.$1+RegExp.$2
    else  strr=RegExp.$1
  if (strr!=value)
    return false;
  else
    return true;
}
</script>
<body>

    <h3>ASP.NET验证用户输入</h3>

    <form method=post runat=server>
    <hr width=600 size=1 noshade>
    <table>
    <tr>
    <td>
    <asp:ValidationSummary ID="valSum" runat="server"
        HeaderText="你必须输入下面这些表单域:"
        DisplayMode="bulletlist"
        Font-Name="宋体"
        Font-Size="12"
        />
    </td>
    </tr>
    </table>
    <center>
    <p>
    
    <!-- 登陆信息 -->
    <table border=0 width=600 >
    <tr><td colspan=3>
        <table border=0 cellpadding=0 cellspacing=0 width="100%">
        <tr><td>
            <b>登陆信息</b>
        </td></tr>
        </table>
    </td></tr>
    <tr>
      <td align=right>
        Email地址:
      </td>
      <td>
        <asp:TextBox id=email width=200px maxlength=60 runat=server />
      </td>
      <td>
        <asp:RequiredFieldValidator id="emailReqVal"
            ControlToValidate="email"
            ErrorMessage="Email地址"
            Display="Dynamic"
            Font-Name="宋体"
        Font-Size="12"
            runat=server>
            *
        </asp:RequiredFieldValidator>
    <asp:CustomValidator id="emailRegexVal" runat="server"
        ControlToValidate="email"
            ClientValidationFunction="ClientValidateEmail"
            
            Display="Static"
            Font-Name="宋体"
        Font-Size="12">
            非法Email地址
        </asp:CustomValidator>
      </td>
    </tr>

    <tr>
      <td align=right>
        密码:
      </td>
      <td>
        <asp:TextBox id=passwd TextMode="Password" maxlength=20 runat=server/>
      </td>
      <td>
          <asp:RequiredFieldValidator id="passwdReqVal"
              ControlToValidate="passwd"
              ErrorMessage="用户密码"
              Display="Dynamic"
              Font-Name="宋体" Font-Size="12"
              runat=server>
              *
          </asp:RequiredFieldValidator>
          <asp:RegularExpressionValidator id="passwdRegexBal"
              ControlToValidate="passwd"
              ValidationExpression=".*[!@#$%^&*+;:].*"
              Display="Static"
              Font-Name="宋体" Font-Size="12"
              Width="100%" runat=server>
              密码必须包含如下字符: (!@#$%^&*+;:)
          </asp:RegularExpressionValidator>
      </td>
    </tr>
    <tr>
      <td align=right>
        确认密码
      </td>
      <td>
        <asp:TextBox id=passwd2 TextMode="Password" maxlength=20 runat=server/>
      </td>
      <td>
        <asp:RequiredFieldValidator id="passwd2ReqVal"
            ControlToValidate="passwd2"
            ErrorMessage="确认密码"
            Display="Dynamic"
            Font-Name="宋体" Font-Size="12"
            runat=server>
            *
        </asp:RequiredFieldValidator>
        <asp:CompareValidator id="CompareValidator1"
            ControlToValidate="passwd2" ControlToCompare="passwd"
            Display="Static"
            Font-Name="宋体" Font-Size="12"
            runat=server>
            密码不符合
        </asp:CompareValidator>
      </td>
    </tr>
    <tr><td colspan=3> </td></tr>

    <!-- 私人信息 -->
    <tr><td colspan=3>
        <table border=0 cellpadding=0 cellspacing=0 width="100%">
        <tr><td>
            <b>个人信息</b>
        </td></tr>
        </table>
    </td></tr>
    <tr>
      <td align=right>
        姓名:
      </td>
      <td>
        <asp:TextBox id=pname maxlength=20 width=200px runat=server />
      </td>
      <td>
      </td>
    </tr>
    <tr>
      <td align=right>
        地址:
      </td>
      <td>
        <asp:TextBox id=address width=200px runat=server />
      </td>
      <td>
      </td>
    </tr>
    <tr>
      <td align=right>
        邮编:
      </td>
      <td>
        <ASP:TextBox id=postcode width=60px maxlength=6 runat=server />
      </td>
      <td>
        <asp:RegularExpressionValidator id="RegularExpressionValidator1"
            ControlToValidate="postcode"
            ValidationExpression="^\d{6}$"
            Display="Static"
            Font-Name="宋体" Font-Size="12"
            runat=server>
            邮编必须是6位数字
        </asp:RegularExpressionValidator>
      </td>
    </tr>
    <tr>
      <td align=right>
        性别:
      </td>
      <td>
        <ASP:RadioButtonList id=sexType runat=server>
            <asp:ListItem>男</asp:ListItem>
            <asp:ListItem>女</asp:ListItem>
        </ASP:RadioButtonList>
      </td>
      <td>
        <asp:RequiredFieldValidator id="sexTypeReqVal"
            ControlToValidate="sexType"
            ErrorMessage="性别"
            Display="Static"
            InitialValue=""
            Font-Name="宋体" Font-Size="12"
            runat=server>
            *
        </asp:RequiredFieldValidator>
      </td>
    </tr>
    <tr>
      <td align=right>
        出生年份:
      </td>
      <td>
        <ASP:DropDownList id=expYear runat=server>
            <asp:ListItem></asp:ListItem>
            <asp:ListItem >1976</asp:ListItem>
            <asp:ListItem >1975</asp:ListItem>
        </ASP:DropDownList>
      </td>
      <td>
        <asp:RequiredFieldValidator id="expDateReqVal"
          ControlToValidate="expYear"
          ErrorMessage="出生年份"
          Display="Static"
          InitialValue=""
          Font-Name="宋体" Font-Size="12"
          runat=server>
          *
        </asp:RequiredFieldValidator>
      </td>
    </tr>
    </table>
        
    <p>
    <input runat="server" type=submit value="提 交">
    <p>
</form>
</center>
</body>
</html>

时间: 2025-01-31 07:51:31

ASP.NET学习手记:验证用户表单输入的相关文章

支持ASP.NET MVC、WebFroM的表单验证框架ValidationSuar使用介绍

  这篇文章主要介绍了支持ASP.NET MVC.WebFroM的表单验证框架ValidationSuar使用介绍,本文详细讲解了使用步骤,并给出一个完整Demo下载,需要的朋友可以参考下 1.支持javascript端和后端的双重验证 (前端目前依赖于jquery.validate.js,也可以自已扩展) 2.代码简洁 3.调用方便 4.功能齐全 使用方法: 新建初始化类,将所有需要验证的在该类进行初始化,语法相当简洁并且可以统一管理,写完这个类你的验证就完成了70% 函数介绍: Add 默认

JavaScript验证整个表单

javascript 不像域级有效性检查(field-level validation),表单级有效性检查(form-level validation)将整个表单上的某组(或全部)值作为一个整体分析其一致性.表单级有效性检查一般发生在将一个已完成的HTML 表单提交给CGI 程序之前.我们这样做是为了确保用户在将数据发送至服务器之前,已经填写了所有的必填域. 验证整个表单其实相当简单.在我们的例子当中,我们已经去除了大部份会自动弹出即时警告信息的域级有效性检查.下面是一个例子: function

ajax-easyui 怎么用js验证表单 输入的是否正确。

问题描述 easyui 怎么用js验证表单 输入的是否正确. 增加一个用户,用身份证号验证唯一性,增加和修改用同一个表单提交的. 怎么用ajax验证是否已经存在相同的身份证号码,增加的时候可以验证,但是修改是也会验证, 但是,会数据库已经存在了.所有验证通不过,表单不能正常提交. 我的方法: http://star77266989.iteye.com/blog/2192022 解决方案 参考:http://www.w3cschool.cc/jeasyui/jeasyui-form-form3.h

ASP.NET MVC 2生成动态表单的一种最简单的思路

在BPM.OA等系统中,都会存在一个表单设计器.有些是通过操作gridview来完成一个表单的设计:有些是通过类似VS拖拽的方法完成一个表单的设计.很明显后面一种优越于前面一种.无论是哪种,最后都会产生一些XML之类的表单结构的数据. 这篇文章将讲述,在表单设计器设计好表单之后,在ASP.NET MVC中如何将表单结构的xml转换成实际应用系统中的表单.看下面一个xml文件,我们假设它是由一个表单设计器设计出来的. <?xml version="1.0" encoding=&qu

AngularJS实现表单手动验证和表单自动验证_AngularJS

AngularJS的表单验证大致有两种,一种是手动验证,一种是自动验证.一.手动验证 所谓手动验证是通过AngularJS表单的属性来验证.而成为AngularJS表单必须满足两个条件: 1.给form元素加上novalidate="novalidate": 2.给form元素加上name="theForm",如下: <!DOCTYPE html> <html lang="en" ng-app="myApp1"

asp教程中get post提交表单有5点区别_应用技巧

asp教程中get post提交表单区别有以下5点 Get和Post方式的区别有5点 1. get是从服务器上获取数据,post是向服务器传送数据. 2. get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到.post是通过HTTP post机制,将表单内各个字段与其内容放置在HTML HEADER内一起传送到ACTION属性所指的URL地址.用户看不到这个过程. 3. 对于get方式,服务器端用Request.QueryString

用JavaScrip正则表达式验证form表单的方法

document:标签之间 location:url history:前进后退 <html> <head> <script type="text/javascript"> function show() { //弹出一个提示框 window.alert("hh"); } //将show方法绑定到按钮上 window.onload=function() { //定位到按钮 var buttonElement=document.for

JS实现支持Ajax验证的表单插件_javascript技巧

本文为大家分享了一个表单验证插件,支持ajax验证,使用起来很简单. 每个需要验证的表单元素下面有一个span标签,这个标签的class有一个valid表示需要验证,如果有nullable则表示可为空:rule表示验证规则,msg表示错误提示信息:to表示要验证的元素的name值,如果元素是单个的,to可以不写.该插件会遍历每个有valid的span标签,找出它前面需要验证的元素,根据rule验证,如果验证不通过,则显示边框为红色,鼠标放在元素上时显示错误信息. 验证时机:1.点击提交按钮时显式

asp教程中get post提交表单有5点区别

asp教程中get post提交表单区别有以下5点 Get和Post方式的区别有5点 1. get是从服务器上获取数据,post是向服务器传送数据. 2. get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到.post是通过HTTP post机制,将表单内各个字段与其内容放置在HTML HEADER内一起传送到ACTION属性所指的URL地址.用户看不到这个过程. 3. 对于get方式,服务器端用Request.QueryString