CN108509246A - 一种网页表单自定义验证方法和系统 - Google Patents
一种网页表单自定义验证方法和系统 Download PDFInfo
- Publication number
- CN108509246A CN108509246A CN201810305912.8A CN201810305912A CN108509246A CN 108509246 A CN108509246 A CN 108509246A CN 201810305912 A CN201810305912 A CN 201810305912A CN 108509246 A CN108509246 A CN 108509246A
- Authority
- CN
- China
- Prior art keywords
- web form
- control
- module
- validator unit
- self
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44521—Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
- G06F9/44526—Plug-ins; Add-ons
Abstract
该网页表单模块中包括各种控件,在每个控件可以进行自定义属性扩展;该验证模块由验证器单元组成,在每个验证器单元中定义验证规则,用于对控件的自定义属性进行验证,该触发单元用于激活验证器单元。通过本发明提供的网页表单自定义验证属性的建立方法和系统,网页开发人员只需关心业务逻辑,不需要关心实现过程,只需简单的配置,不写或无需写代码就能实现表单的检验。另外,该方法会使项目的项目开发分工更加明确,页面设计着只需关心他的页面,Javascript开发都只需关心脚本的开发。
Description
技术领域
本发明涉及数据处理领域,具体涉及一种网页表单自定义验证方法和系统。
背景技术
表单是WEB应用程序中最主要的数据输入界面,表单的验证一直是网页设计者头痛的问题,常见的表单验证,例如新用户注册,填写个人资料,录入一些常规数据等等,具体验证内容有不能为空,或必须满足长度要求,或必须为数字,或必须为Email等等。网页验证一般分为服务器验证和前端验证。
服务器端验证,实际上是把信息提交到服务器上的动态页面里才实现验证,安全性相对比较高,缺点是会加大服务器的处理压力,对网络速度要求较高。一般可以调用专用验证控件,然后在后台端写处理逻辑进行验证,相似的代码需要反复书写。
前端验证,是直接在网页前端进行数据验证,优点是反馈快速,给人一种运行在桌面应用程序的感觉,使用户能够及时察觉所填写数据的不合法性。前端验证基本上采用脚本代码实现,如JavaScript或VBScript。为此,页面脚本开发者需要编写大量的JavaScript或VBScript来进行表单元素的校验,而对于需要判断的表单元素比较多时,相似的验证也是需要不停地被重复书写时,开发过程显得比较枯燥无味。开发者们需要一种只需简单的配置,少写或无需写代码就能实现表单验证的实现方法。
发明内容
本发明针对现有技术的不足,提出一种网页表单自定义验证方法和系统,
一种网页表单自定义验证方法,具体技术方案如下:
一种网页表单自定义验证方法,其特征在于,
包括如下步骤:
步骤1:设置网页表单模块,该网页表单模块中包括至少一个控件,设置控件的属性,针对每个控件进行自定义属性扩展;
步骤2:配置验证模块,该验证模块由验证器单元组成,在每个验证器单元中定义验证规则;
步骤3:将验证模块与网页表单模块进行关联;
步骤4:在网页表单模块中添加触发单元;
步骤5:当触发单元被激发时,循环遍历网页表单模块中的控件,将每个控件的扩展属性传递给对应的验证器单元;
步骤6:对控件完成验证,返回验证结果。
进一步地:所述验证器单元通过Javascript来实现。
进一步地:所述触发单元可采用Button控件,通过指定该Button控件的单击事件进行验证器单元的函数关联。
进一步地:通过在网页表单页面的尾部添加验证模块的引用文件完成网页表单模块与验证模块之间的关联。
一种网页表单自定义验证系统,具体技术方案如下:
一种网页表单自定义验证系统,其特征在于,包括网页表单模块、验证模块和触发单元;
该网页表单模块中包括各种控件,在每个控件可以进行自定义属性扩展;该验证模块由验证器单元组成,在每个验证器单元中定义验证规则,用于对控件的自定义属性进行验证,该触发单元用于激活验证器单元。
本发明的有益效果为:通过本发明提供的网页表单自定义验证属性的建立方法和系统,网页开发人员只需关心业务逻辑,不需要关心实现过程,只需简单的配置,不写或无需写代码就能实现表单的检验。另外,该方法会使项目的项目开发分工更加明确,页面设计着只需关心他的页面,Javascript开发都只需关心脚本的开发。
附图说明
图1为本发明的结构框图;
图2为本发明的工作流程图。
具体实施方式
下面结合附图对本发明的较佳实施例进行详细阐述,以使本发明的优点和特征能更易于被本领域技术人员理解,从而对本发明的保护范围做出更为清楚明确的界定。
ASP.NET为开发人员提供了一整套完整的服务器控件来验证用户输入的信息是否有效。部分控件如下:
1、RequiredFieldValidator:验证一个必填字段,如果这个字段没填,那么,将不能提交信息。
2、CompareValidator:比较验证。比较两个字段值是否相等,如密码和确认密码两个字段是否相等;比较一个字段与一个具体的值。
3、RangeValidator:范围验证。验证一个字段是否在某个范围中,如成绩字段要是0~100范围中。
4、RegularExpressionValidator:正则表达式验证。它根据正则表达式来验证用户输入字段的格式是否合法,如电子邮件、身份证、电话号码等。
5、CustomValidator:在运行定制的客户端JavaScript或VBScript函数时,可以使用这个控件。
使用控件验证的好处就是大大简化了编程,提高了工作效率,安全问题比较有保障,但是缺点也很明显,就是功能有限,当业务有特殊验证要求的时候,服务器控件就可能不能满足需要,这时需要自己加入Javascript混合验证。采用的方式为,在安全问题没有影响的情况下,采用在已有控件加上自定义属性的方法,对前端的数据进行通用性验证处理,其好处是,其一不需要调查验证控件实现,其二是实现业务逻辑与代码的分离,即Javascript部分专人编写,业务逻辑部分只管调用就可以。这样可以提高代码的重用性,且不影响客户的体验感。
如图1所示为,一种网页表单自定义验证系统,包括网页表单模块、验证模块和触发单元;
该网页表单模块中包括各种控件,在每个控件可以进行自定义属性扩展;该验证模块由验证器单元组成,在每个验证器单元中定义验证规则,用于对控件的自定义属性进行验证,该触发单元用于激活验证器单元,所述验证器单元通过Javascript来实现。在每个验证器单元中定义验证规则,能够实现如长度要求、数字要求、Email格式、日期格式、数据比较等验证要求;
上述的网页表单自定义属性,指在表单控件上添加一条自定义的扩展属性,验证器单元将根据该扩展属性,对表单进行相应处理;
上述的验证器单元触发,指用户提交表单后,系统自动调用脚本的行为;
这里的用户可以是网页开发者,也可以是普通的终端用户。上述的浏览器可以包括运行于台式计算机,笔记本,手机,PDA,平板电脑的网页浏览器。
如图2所示具体为,一种网页表单自定义验证方法,包括如下步骤:
步骤1:设置网页表单模块,该网页表单模块中包括各种控件,设置控件的属性,针对每个控件进行自定义属性扩展,以下以.net网页编程为例,说明TextBox服务器控件如何添加长度控制自定义属性IsValidate和aaincludeSubstring。具体为:
在一个TextBox控件下扩展两个关联属性IsValidate,aaincludeSubstring,其目的是当IsValidate非空时,检查该TextBox控件录入字符串中是否包含有子串aaincludeSubstring,没包含时报错;
流程如下:
1,在default.aspx页面的给定服务器Form容器中添加一个TextBox控件;
2,新增IsValidate属性、aaincludeSubstring属性,如下所示:
<asp:TextBox runat="server"ID="bb"IsValidate="【说明】必须输入!"aaincludeSubstring="您好"/>于是,ID为bb的TextBox控件具有需要录入包含子字符串aaincludeSubstring的自定义属性。
步骤2:配置验证模块,该验证模块由验证器单元组成,在每个验证器单元中定义验证规则,其中一个具体方式为:
新建一个WTab.js的文件,定义一个触发函数SaveData,主要代码如下:
主要思路是循环页面中所有控件,如果该控件有自定义IsValidate属性,且非空,那么对该控件录入内容是否包含aaincludeSubstring进行判断,没包含将报错。
步骤3:将验证模块与网页表单模块进行关联,具体方式为,在default.aspx的尾部,添加脚本引用文件,假设WTab.js位于网站根目录下,于是可以引用js脚本如下:
<script src="WTab.js"type="text/javascript"></script>
于是,程序执行到尾部时,将根据Javascript的引用要求,自动加载根目录的WTab.js文件。
步骤4:在网页表单模块中添加触发单元;具体为,在default.aspx页面的同一Form下,添加一个Button控件,指定该控件单击事件的Javascript关联函数SaveData。
步骤5:当触发单元被激发时,循环遍历网页表单模块中的控件,将每个控件的扩展属性传递给对应的验证器单元,具体为,当用户单击该Button,将触发WTab.js下的SaveData函数,具体处理方法见第一部分。简要编码如下:
<asp:Button ID="cc"runat="server"OnClientClick="SaveData(1)"></asp:Button>;
步骤6:对控件完成验证,返回验证结果。
Claims (5)
1.一种网页表单自定义验证方法,其特征在于,
包括如下步骤:
步骤1:设置网页表单模块,该网页表单模块中包括至少一个控件,设置控件的属性,针对每个控件进行自定义属性扩展;
步骤2:配置验证模块,该验证模块由验证器单元组成,在每个验证器单元中定义验证规则;
步骤3:将验证模块与网页表单模块进行关联;
步骤4:在网页表单模块中添加触发单元;
步骤5:当触发单元被激发时,循环遍历网页表单模块中的控件,将每个控件的扩展属性传递给对应的验证器单元;
步骤6:对控件完成验证,返回验证结果。
2.根据权利要求1所述一种网页表单自定义验证方法,其特征在于,所述验证器单元通过Javascript来实现。
3.根据权利要求2所述一种网页表单自定义验证方法,其特征在于,所述触发单元可采用Button控件,通过指定该Button控件的单击事件进行验证器单元的函数关联。
4.根据权利要求1所述一种网页表单自定义验证方法,其特征在于,通过在网页表单页面的尾部添加验证模块的引用文件完成网页表单模块与验证模块之间的关联。
5.一种网页表单自定义验证系统,其特征在于,包括网页表单模块、验证模块和触发单元;
该网页表单模块中包括各种控件,在每个控件可以进行自定义属性扩展;该验证模块由验证器单元组成,在每个验证器单元中定义验证规则,用于对控件的自定义属性进行验证,该触发单元用于激活验证器单元。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810305912.8A CN108509246A (zh) | 2018-04-08 | 2018-04-08 | 一种网页表单自定义验证方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810305912.8A CN108509246A (zh) | 2018-04-08 | 2018-04-08 | 一种网页表单自定义验证方法和系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108509246A true CN108509246A (zh) | 2018-09-07 |
Family
ID=63380981
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810305912.8A Pending CN108509246A (zh) | 2018-04-08 | 2018-04-08 | 一种网页表单自定义验证方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108509246A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109240692A (zh) * | 2018-11-16 | 2019-01-18 | 重庆满惠网络科技有限公司 | 一种基于通用模板的网页数据库开发的建立方法和系统 |
CN109491896A (zh) * | 2018-10-26 | 2019-03-19 | 深圳点猫科技有限公司 | 一种教育系统的微信小程序表单校验方法及电子设备 |
CN109725954A (zh) * | 2018-12-21 | 2019-05-07 | 中链科技有限公司 | 一种动态数据项处理方法及系统 |
CN110569466A (zh) * | 2019-08-27 | 2019-12-13 | 上海易点时空网络有限公司 | 用于移动端的表单验证处理方法以及装置 |
CN113986775A (zh) * | 2021-11-03 | 2022-01-28 | 苏州睿芯集成电路科技有限公司 | 一种risc-v cpu验证中页表项生成方法、系统及装置 |
CN115544417A (zh) * | 2022-10-10 | 2022-12-30 | 中电金信软件有限公司 | 一种网页表单验证方法、装置、电子设备及存储介质 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101470867A (zh) * | 2007-12-29 | 2009-07-01 | 一零四资讯科技股份有限公司 | 复杂性表单自动验证的求职系统 |
CN101572696A (zh) * | 2008-04-29 | 2009-11-04 | 华为技术有限公司 | 一种网页表单数据验证的方法和装置 |
CN101576823A (zh) * | 2009-06-11 | 2009-11-11 | 阿里巴巴集团控股有限公司 | 一种表单控件的验证方法及装置 |
CN102413162A (zh) * | 2011-07-29 | 2012-04-11 | 互动在线(北京)科技有限公司 | 一种网站前端验证方法和装置 |
CN103246733A (zh) * | 2013-05-13 | 2013-08-14 | 浪潮集团山东通用软件有限公司 | 一种基于元数据的动态表单系统及其生成方法 |
CN103279343A (zh) * | 2013-05-16 | 2013-09-04 | 北京互动阳光科技有限公司 | 一种基于分布式大型网站开发的技术框架系统 |
CN104049972A (zh) * | 2014-06-18 | 2014-09-17 | 北京京东尚科信息技术有限公司 | 一种数据验证方法及系统 |
CN104899027A (zh) * | 2015-05-22 | 2015-09-09 | 国云科技股份有限公司 | 一种实现js通用表单验证的方法 |
US20170255943A1 (en) * | 2015-05-22 | 2017-09-07 | Paypal, Inc. | Hosted sensitive data form fields for compliance with security standards |
CN107423061A (zh) * | 2017-07-12 | 2017-12-01 | 江苏速度信息科技股份有限公司 | 一种基于ison数据的表单生成方法 |
CN107766124A (zh) * | 2017-10-26 | 2018-03-06 | 福建星瑞格软件有限公司 | 一种web表单的自动验证方法以及装置 |
-
2018
- 2018-04-08 CN CN201810305912.8A patent/CN108509246A/zh active Pending
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101470867A (zh) * | 2007-12-29 | 2009-07-01 | 一零四资讯科技股份有限公司 | 复杂性表单自动验证的求职系统 |
CN101572696A (zh) * | 2008-04-29 | 2009-11-04 | 华为技术有限公司 | 一种网页表单数据验证的方法和装置 |
CN101576823A (zh) * | 2009-06-11 | 2009-11-11 | 阿里巴巴集团控股有限公司 | 一种表单控件的验证方法及装置 |
CN102413162A (zh) * | 2011-07-29 | 2012-04-11 | 互动在线(北京)科技有限公司 | 一种网站前端验证方法和装置 |
CN103246733A (zh) * | 2013-05-13 | 2013-08-14 | 浪潮集团山东通用软件有限公司 | 一种基于元数据的动态表单系统及其生成方法 |
CN103279343A (zh) * | 2013-05-16 | 2013-09-04 | 北京互动阳光科技有限公司 | 一种基于分布式大型网站开发的技术框架系统 |
CN104049972A (zh) * | 2014-06-18 | 2014-09-17 | 北京京东尚科信息技术有限公司 | 一种数据验证方法及系统 |
CN104899027A (zh) * | 2015-05-22 | 2015-09-09 | 国云科技股份有限公司 | 一种实现js通用表单验证的方法 |
US20170255943A1 (en) * | 2015-05-22 | 2017-09-07 | Paypal, Inc. | Hosted sensitive data form fields for compliance with security standards |
CN107423061A (zh) * | 2017-07-12 | 2017-12-01 | 江苏速度信息科技股份有限公司 | 一种基于ison数据的表单生成方法 |
CN107766124A (zh) * | 2017-10-26 | 2018-03-06 | 福建星瑞格软件有限公司 | 一种web表单的自动验证方法以及装置 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109491896A (zh) * | 2018-10-26 | 2019-03-19 | 深圳点猫科技有限公司 | 一种教育系统的微信小程序表单校验方法及电子设备 |
CN109491896B (zh) * | 2018-10-26 | 2022-06-21 | 深圳点猫科技有限公司 | 一种教育系统的微信小程序表单校验方法及电子设备 |
CN109240692A (zh) * | 2018-11-16 | 2019-01-18 | 重庆满惠网络科技有限公司 | 一种基于通用模板的网页数据库开发的建立方法和系统 |
CN109725954A (zh) * | 2018-12-21 | 2019-05-07 | 中链科技有限公司 | 一种动态数据项处理方法及系统 |
CN110569466A (zh) * | 2019-08-27 | 2019-12-13 | 上海易点时空网络有限公司 | 用于移动端的表单验证处理方法以及装置 |
CN113986775A (zh) * | 2021-11-03 | 2022-01-28 | 苏州睿芯集成电路科技有限公司 | 一种risc-v cpu验证中页表项生成方法、系统及装置 |
CN113986775B (zh) * | 2021-11-03 | 2023-08-18 | 苏州睿芯集成电路科技有限公司 | 一种risc-v cpu验证中页表项生成方法、系统及装置 |
CN115544417A (zh) * | 2022-10-10 | 2022-12-30 | 中电金信软件有限公司 | 一种网页表单验证方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108509246A (zh) | 一种网页表单自定义验证方法和系统 | |
CN109344642B (zh) | 接口规则校验方法、装置、计算机设备及存储介质 | |
CN109460279A (zh) | 基于小程序的表单页面开发方法、装置、设备及存储介质 | |
US8055996B2 (en) | Lightweight form pattern validation | |
US6973625B1 (en) | Method for creating browser-based user interface applications using a framework | |
CN105814539B (zh) | 用于代码虚拟化和远程进程调用生成的方法和装置 | |
CN106850503B (zh) | 一种免登录身份认证方法及装置 | |
JP5238851B2 (ja) | 画面生成システム、画面生成方法、および画面生成プログラム | |
CN107861713A (zh) | 数据调用方法、装置及计算机可读存储介质 | |
CN104049972A (zh) | 一种数据验证方法及系统 | |
US11755830B2 (en) | Utilizing natural language processing to automatically perform multi-factor authentication | |
CN106569860A (zh) | 一种应用管理方法及终端 | |
WO2023005163A1 (zh) | 应用页面的加载方法、存储介质、及其相关设备 | |
US20190005228A1 (en) | Trusted and untrusted code execution in a workflow | |
MacIntyre et al. | Pro PHP programming | |
CN110192195B (zh) | 用于安全数据访问的系统、方法和计算机存储介质 | |
CN115698986A (zh) | 客户端应用程序的文件上传修改 | |
CN114780497B (zh) | 批量文件处理方法、装置、计算机设备、介质和程序产品 | |
US10021082B2 (en) | Integration of form and file services | |
CN112925589A (zh) | 扩展接口的调用方法及装置 | |
CN110109674A (zh) | 时间选择器的优化方法、装置及存储介质 | |
KR20130101377A (ko) | 스크립트를 이용하여 메뉴를 연동시킨 웹 어플리케이션 제공 방법 및 그를 이용한 스마트 단말 | |
CN109857735A (zh) | 一种通过excel进行规则描述的数据构造方法及系统 | |
CN105989046A (zh) | 网站显示方法及系统、以及用户终端 | |
US20220100719A1 (en) | Techniques for performing lifecycle operations on a data store |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180907 |