Form表单提交与Validform验证的那些事

article/2025/9/10 7:19:44

不管是做登录、注册还是实体的添加、修改,我们都会用到表单,并且也会同时用到验证,这里结合Validform验证来详细说明form表单提交的内情。。

1. 引入文件

<link href="css/validate.css" rel="stylesheet" />
<script src="scripts/jquery/jquery-1.11.2.min.js"></script>
<script src="scripts/jquery/Validform_v5.3.2_min.js"></script>

2. form表单

<form method="post" action="register.aspx" id="register" runat="server"><div class="zczh"><h2>注册账号</h2><div class="form-group"><dl><dt><i>*</i> 用户名:</dt><dd><asp:TextBox ID="userName" runat="server" ajaxurl="/tools/validreg.ashx?regType=validName" CssClass="form-control" datatype="s4-20" nullmsg="请输入用户名" errormsg="请输入4~20位字符" sucmsg=" " placeholder="4~20个字符,只接受字母和数字,建议用公司缩写"></asp:TextBox></dd><dd class="inline-block"></dd></dl><dl><dt><i>*</i> 密码:</dt><dd><asp:TextBox ID="txtPassword" runat="server" CssClass="form-control" TextMode="Password" datatype="*6-20" nullmsg="请设置密码" errormsg="密码范围在6-20位之间" sucmsg=" " placeholder="可由6-16位英文、数字及标点组成"></asp:TextBox></dd><dd class="inline-block"></dd></dl><dl><dt><i>*</i> 确认密码:</dt><dd><asp:TextBox ID="txtPassword1" runat="server" CssClass="form-control" TextMode="Password" datatype="*" recheck="txtPassword" nullmsg="请再次输入密码" errormsg="两次输入的密码不一致" sucmsg=" " placeholder="请再输入一次密码"></asp:TextBox></dd><dd class="inline-block"></dd></dl><dl><dt><i>*</i> 电子邮箱:</dt><dd><asp:TextBox ID="txtEmail" runat="server" ajaxurl="/tools/validreg.ashx?regType=validEmail"CssClass="form-control" datatype="e" nullmsg="请输入电子邮箱" sucmsg=" " placeholder="格式如:****@163.com"></asp:TextBox></dd><dd class="inline-block"></dd></dl><dl><dt><i>*</i> 手机号码:</dt><dd><asp:TextBox ID="txtTel" runat="server" ajaxurl="/tools/validreg.ashx?regType=validPhone" CssClass="form-control" datatype="/^1(3|4|5|7|8)\d{9}$/" nullmsg="请输入手机号码" sucmsg=" " placeholder="请输入手机号码"></asp:TextBox></dd><dd class="inline-block"></dd></dl><dl><dt><i>*</i> 图形验证码:</dt><dd><asp:TextBox ID="txtImgCode" runat="server" ajaxurl="/tools/validCheckColorCode.ashx?regState=1" CssClass="form-control" datatype="*" nullmsg="请输入右侧图形验证码" sucmsg=" " placeholder="请输入右侧图形验证码" Width="215px"></asp:TextBox><div style="display: inline-block; vertical-align: middle; height: 40px; width: 80px; margin-top: -2px; overflow: hidden; border: 1px solid #ddd;"><a href="javascript:void(0);" id="refreshCode"><img id="imgVerify" src="ColorCheckCode.aspx?" title="看不清点击更换" align="absmiddle" onclick="this.src=this.src+'?'" style="cursor: pointer; height: 42px; margin-top: -1px; margin-left: -1px;" /></a></div></dd><dd class="inline-block"></dd></dl><dl><dt><i>*</i> 短信验证码:</dt><dd><asp:TextBox ID="txtTelCode" runat="server" CssClass="form-control" datatype="n6" nullmsg="请输入手机收到的短信验证码!" errormsg="请输入手机收到的短信验证码!" sucmsg="<font color='green'>恭喜您,验证成功!</font>"ajaxurl="" Width="181px"></asp:TextBox><div style="display: inline-block; vertical-align: middle; margin-top:-8px; height: 38px;" id="divSend"><a class="telcode" id="getCode" href="#">获取短信验证码</a></div></dd><dd class="inline-block"></dd></dl><div class="form-group1" id="divSubmit"><asp:Button ID="btnSubmit" runat="server" CssClass="btn input-submit" Text="立即注册" OnClick="btnSubmit_Click" /></div></div></div><p class="ydxy center"><span>已有账号?<a href="member/Login.aspx">立即登录</a></span></p>
</form>

3. js初始化表单验证

$(function () {var valid_rule = $("#register").Validform({datatype: {//传入自定义datatype类型,可以是正则,也可以是函数(函数内会传入一个参数);"n6": /^\d{6}$/},tiptype: 2});$("#txtTel").blur(function () {$("#txtTelCode").attr("ajaxurl", "/tools/validreg.ashx?regType=validCode&ctype=1&phone=" + $('#txtTel').val());});
});

4. 手机号是否重复验证示例

#region //手机号验证
public void PhoneValid(HttpContext context)
{string txtTel = DTRequest.GetString("param");SqlParameter[] param = {new SqlParameter("@mobile", txtTel)};int count1 = int.Parse(DbHelperSQL.GetSingle("select count(id) from lab_users where mobile=@mobile", param).ToString());if (count1 == 0){context.Response.Write("{ \"info\":\"<font color='green'>该手机号可用</font>\", \"status\":\"y\" }");}else{context.Response.Write("{ \"info\":\"该手机号已注册过,请更换!\", \"status\":\"n\" }");}
}
#endregion

5. 验证效果

Form表单提交与Validform验证的那些事

当然这里只有密码是简单的使用validform的验证,其他都是采用ajax与validform的结合。
使用时注意事项如下:

(1) 如果仅仅使用validform的内置验证,在js中可直接简单的初始化就可以,如:$(“#register”).Validform({tiptype: 2}),里面的参数tiptype是表明要使用的错误提示方法,如果使用默认的可以去掉tiptype。

(2) 上述例子在js中可以自定义validform的验证,类似于在datatype属性中定义的“n6”,可以同样使用。

(3) 如用户名这样的验证是结合validform的内置验证与ajax的验证,即两种验证都有,其中ajax的验证可以使用属性ajaxurl指定相应的一般处理程序路径,具体使用可参考示例手机号重新验证方法。

(4) 因为手机号与短信验证码均需求验证,而我们又是必须先填手机号,在其验证通过并发送验证码(方法请参考ASP.NET发送手机短信验证码)后再对验证码进行验证,这里需要注意的是对验证码即控件txtTelCode的属性ajaxurl的设置必须是在对手机号验证通过后,这是一个先后顺序问题。这里采用的是在手机号控件的blur事件中设置,请参考上述js中的事件代码。

(5) 注意必须是submit的提交才会触发validform验证,这里的submit可以是type=”submit”的input控件,也可以是type=”submit”的button控件,当然如果你是用的服务器控件就更没问题了,因为所有服务器控件的事件都会触发validform的验证。


http://chatgpt.dhexx.cn/article/r2adCMl1.shtml

相关文章

来说说validform吧

开始自己写表单验证的时候真的是头疼死了&#xff0c;即使现在有了html5&#xff0c;他可以自动的在表单中写上类似placeholder这样的属性&#xff0c;但是html5的这些属性还具有兼容性。总之还是得自己写一堆js代码来验证的。但是自从发现了这个validform插件以后省去了所有的…

validform表单验证插件最终版

做个笔记&#xff0c;以后直接用吧。 报名界面&#xff1a; <% page language"java" pageEncoding"UTF-8" contentType"text/html;charsetUTF-8"%> <% include file"/public/taglibs.jsp"%> <% include file"/p…

@Valid和@Validated

简介 Validation是一套帮助我们继续对传输的参数进行数据校验的注解&#xff0c;通过配置Validation可以很轻松的完成对数据的约束&#xff0c;配合BindingResult可以直接提供参数验证结果 所有参数注解含义 参考 Validated注解详解&#xff0c;分组校验&#xff0c;嵌套校验…

@Valid与@Validated注解

之前项目中参数的校验&#xff0c;都是自己写的判断方法进行校验&#xff0c;这次采用了spring提供的注解进行参数的校验&#xff0c;更为的方便&#xff0c;简洁。 Valid&#xff1a;常见用在方法&#xff0c;类中字段上进行校验 Validated&#xff1a;是spring提供的对Valid…

Validform.js jQuery验证插件 使用说明

官网原文&#xff1a;http://validform.rjboy.cn/demo.html Validform常用功能示例 申请VIP 您可以享受到&#xff1a; 及时的技术支持(1年)一对一的使用培训第一手的版本更新信息和讲解 申请条件&#xff1a; 1年365天&#xff0c;每天1元钱&#xff0c;您只需支付365元就能获…

Validform表单验证框架详解

Validform是另外一种表单验证框架&#xff0c;也是基于jQuery框架&#xff0c;用法比较灵活。 这里使用该框架的版本号为&#xff1a; Validform_v5.3.2 官网&#xff1a;http://validform.rjboy.cn/ 目前已经打不开了&#xff0c;本文最后会将官方的的demo打包 。 下面来看看…

Validform表单验证总结

近期项目里用到了表单的验证&#xff0c;选择了Validform_v5.3.2。 先来了解一下一些基本的参数&#xff1a; 通用表单验证方法&#xff1a;Demo: $(".demoform").Validform({//$(".demoform")指明是哪一表单需要验证,名称需加在form表单上; btnSubmit:&qu…

数据分析方法与模型

文章目录 1 数据分析1.1 占比分析1.2 趋势分析1.3 对比分析1.4 象限分析1.5 排名分析1.6 维度分析 2 分析模型2.1 费米问题-大致估算2.2 七问分析法-思考角度的拓展2.3 互联网通用模型AARRR、八角分析法2.3.1 AARRR2.3.2 游戏化用户增长策略-八角模型 本文来源&#xff0c;为接…

在mysql中数据模型三要素_数据模型三要素是什么?

展开全部 数据模型三要素是数据结构、数据操作、数据约束。 1、数据结构 是计算机存储、62616964757a686964616fe78988e69d8331333431376634组织数据的方式。数据结构是指相互之间存在一种或多种特定关系的数据元素的集合,即带“结构”的数据元素的集合。。通常情况下&#xff…

数据库系统常用的数据模型

数据库系统常用的数据模型 一、层次模型二、网状模型三、关系模型 数据库的发展经历了初始阶段、萌芽阶段、初级阶段、中级阶段、高级阶段&#xff0c;这个过程也产生了多个不同的数据模型&#xff0c;接下来我们讲详细介绍数据库的模型 数据库的发展史 数据库的发展史 初始阶段…

(常见)数据模型

文章目录 数据模型概述一、数据模型概要1.模型、建模与抽象2.数据模型3.两类数据模型 二、数据库模型的组成要素1.数据结构2.数据操作3.数据的完整性约束 三、概念模型1.概要2.基本概念3.概念模型的表示方法 常用数据模型一、层次模型1.简介2.数据结构3.数据操纵与完整性约束4.…

2、机器学习三要素之数据、模型、算法

注&#xff1a; 本系列 课程源于李烨 (微软高级软件工程师)老师的文档 在gitbook 上可以买到李老师课程。 机器学习三要素包括数据、模型、算法。简单来说&#xff0c;这三要素之间的关系&#xff0c;可以用下面这幅图来表示&#xff1a; 总结成一句话&#xff1a;算法通过…

数据库系统的三种数据模型

数据模型&#xff1a; 数据模型&#xff08;Data Model&#xff09;是数据特征的抽象。数据&#xff08;Data&#xff09;是描述事物的符号记录&#xff0c;模型&#xff08;Model)是现实世界的抽象。数据模型从抽象层次上描述了系统的静态特征、动态行为和约束条件&#xff0c…

数据模型简介

一张地图、售楼处小区的沙盘、一架精巧的航模飞机都是具体的模型&#xff0c;可以让人联想到真是生活中的事物&#xff0c;模型是对现实世界中某个对象特性的模拟和抽象。 数据模型&#xff08;data model&#xff09;也是一种模型&#xff0c;是对现实世界数据特征的抽象。人…

mysql数据模型三要素_数据模型的作用及三要素是什么?

展开全部 数据模型三要素是数据结构、数据操作、数据约束。 1、数据结构 是计算机存储636f707962616964757a686964616f31333431376634、组织数据的方式。数据结构是指相互之间存在一种或多种特定关系的数据元素的集合,即带“结构”的数据元素的集合。。通常情况下&#xff0c;精…

数据库的三种模型

前言 数据模型是数据库系统的核心&#xff0c;本文简要介绍三种主要的数据库模型。 一、格式化模型 格式化模型是层次模型和网状模型的统称 1.层次模型 ① 层次数据模型的概念 层次模型用属性结构来表示各类实体以及实体间的联系 ② 层次模型的数据结构 特点&#xff1a…

关系数据模型的三个组成部分(关系数据模型的三个组成部分)

关系数据模型由什么组成 关系数据模型由含有相同数据类型的若干行组成。每一行有若干个字段。每一个字段各自可以有不同的数据类型。关系模型中的数据操作是集合操作&#xff0c;操作对象和操作结果都是关系&#xff0c;即若干元组的集合&#xff0c;而不象非关系模型中那样是单…

三种数据模型

数据库的类型是根据数据模型来划分的&#xff0c;而任何一个DBMS也是根据数据模型有针对性地设计出来的&#xff0c;这就意味着必须把数据库组织成符合DBMS规定的数据模型。目前成熟地应用在数据库系统中的数据模型有&#xff1a;层次模型、网状模型和关系模型。它们之间的根本…

数据模型组成要素

最近在看工作机会,目前的公司涨薪的机会渺茫,加上通勤过长。看来换份工作势在必行了。言归正传更新最新学习笔记。 一、数据模型的组成要素 精确地描述了系统的静态特性、动态特性和完整性约束条件三部分组成: 数据结构–描述系统的静态特性 刻画数据模型性质的重要方面 …

java stream 遍历map_遍历map的五种方法介绍

日常开发中Map集合遍历是经常使用的&#xff0c;下面介绍几种遍历方法的差异。 (推荐教程&#xff1a;java课程) 1、IteratorentrySet写法【推荐JDK8以下】&#xff0c;Map.Entry是Map接口的内部接口&#xff0c;获取迭代器&#xff0c;然后依次取出每个迭代器里面的Map.EntryI…