当前位置:文档之家› day31_数据回显、模型驱动、防止表单重复提交

day31_数据回显、模型驱动、防止表单重复提交

day31_数据回显、模型驱动、防止表单重复提交
day31_数据回显、模型驱动、防止表单重复提交

Struts回顾:

1. Struts开发流程

(搭建一个strtus开发环境)

2. Struts 执行流程

3. Struts配置

-→ package

→拦截器

→全局视图

→ action

默认值

4. struts核心功能

a. 数据处理

b. 请求数据封装/类型转换

c. 文件上传与下载

d. 拦截器

e. 国际化

f. Ognl 表达式语言/ struts标签

g.数据效验

5. struts其他细节技术

数据回显、模型驱动、防止表单重复提交

最后,

综合练习!

1. Struts数据效验

表单数据的验证:

前台验证:主要是通过JS验证,表达数据是否合法!

后台验证:通过后台java代码进行验证!

Struts也提供了数据效验的方式!

Struts数据效验,通过拦截器完成:

name="validation"

class="org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor"/>

代码方式验证Action中所有的方法:

步骤:

1. 搭建struts环境

2. login.jsp

https://www.doczj.com/doc/5016158684.html,erAction.java

代码方式验证Action中指定的方法:

写验证方法命名规则:

validate + 要验证的方法名(方法名首字母一定要大写!!!)

如:

public void validateRegister() {

只会验证当前action的register方法!

XML方式验证Action中所有的方法:(Token必须)

总结代码方式验证:

繁琐,设计很多重复的验证逻辑!例如:非空验证、数值验证、email、日期等。Struts对于常用的验证,进行了封装,即提供了验证器,验证指定的常用业务逻辑!

Struts提供的所有验证器:

如果写xml,从而定义验证规则:

1)XML文件名称语法:ActionClassName-validation.xml 注意:此xml需要与当期要验证的action在同一个目录:

举例:UserAction-validation.xml

XML方式验证Action中指定的方法:

与上面xml验证方式大致相同:验证xml文件内容不变;

文件命名:

语法:ActionClassName-ActionName-validation.xml

举例:UserAction-user_register-validation.xml

验证UserAction中的register方法

验证总结

代码:

重写validate() , 验证action所有方法

Validate方法名(), 验证指定“方法名”的方法

Xml:

验证所有方法:ActionClassName-validation.xml

验证指定方法:ActionClassName-actionName-validation.xml

代码验证,

比较灵活,可以满足所有的需求.

比较繁琐,要写重复的验证判断逻辑!

适合:表单字段较少的情况用!

XML验证:

通用,但不够灵活;可以验证特定简单的业务。

适合:验证表单字段较多,可以大大简化代码!

(配置文件过多)

验证错误处理

Struts在进行数据效验的时候,验证失败,会返回input视图,要求我们要在struts.xml中配置input视图对应的错误页面!

Jsp显示错误处理办法

显示英文,显得不怎么友好,我们可以通过配置将其转化为中文

首先找到↓↓↓

在xwork-core-2.3.4.jar ->

|----com.opensymphony.xwork2

|----xwork-messages.properties(文件中有着英文提示模板)

可以看到配置文件中xwork.default.invalid.fieldvalue=….

{0}表示属性名,对于表单来说就是

日期中的workdate

步骤

1.编写一个errornote.properties(文件名和路径随意)

2.在struts.xml中加载配置的资源文件

value="cn.itcast.upload.fileupload">

name属性值默认在default.properties的165行(默认被注释)。如下图

value属性值如果文件在包下包使用.分隔,且不要带文件的后缀。如果有多个资源文件使用,号隔开。

下面是效果页面

Jsp显示错误

方式3: 修改标签定义的模板

找到fielderror标签定义的模板文件:

Struts-core.jar\template\simple\fielderror.ftl

把修改后的fielderror.ftl文件,放到src/ template/ simple/ fielderror.ftl 这样标签显示的样式就修改了!

2. Struts 简单UI标签

注意:

给form指定主题,form下所有的表单元素都应用此主题!

对于struts标签默认的主题样式:default.xml/struts.ui.theme=xhtml

可以通过常量修改, 改为简单主题:

name="struts.ui.theme"

value="simple">

3. Struts ognl表达式语言几个符号# 获取非根元素值、动态都建map集合

$ 配置文件取值(用于配置文件中)

% 提供一个ognl表达式运行环境

4. Struts中常用的几个技术

数据回显

注意,Struts标签中的是自带数据回显的。如下图,其中标签如果要实现数据回显的话,一定要加入showPassword=”true否则是没有办法回显”

数据回显,必须要用struts标签!

从上面,我们也可以看出数据回显的原理,那就是在域中含有对应属性的属性值。便可以实现数据回显。

模型驱动(d efaultStack中默认有加载)

Struts运行时候,会执行默认的拦截器栈,其中有一个拦截器,模型驱动拦截器:

name="modelDriven"

class="com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor"/>

引入

步骤及原理

步骤:

1. 实现ModelDriver接口

2. 实现接口方法:接口方法返回的就是要封装的对象

3. 对象一定要实例化。

private User user=new User();//一定要实例化对象

分析:

防止表单重复提交

Struts提供了防止表单重复提交拦截器:

class="org.apache.struts2.interceptor.TokenInterceptor"/>

综合案例:

1. 建库、建表

2. 搭建环境

搭建struts环境

组件:c3p0/dbutils/驱动

表单_基础知识

表单 表单form是Internet和服务器之间进行信息交流的一种重要工具。包括按钮、文本框、单选按钮、复选按钮等,它们被称之为表单对象。表单的使用包括两部分:一是用户界面,提供用户输入数据的元件;另一部分是处理程序,可以是客户端程序而在浏览器执行,也可以是服务器程序,处理用户提交的数据,返回结果。 一.可插入的表单对象 Dreamweaver中,在“插入”面板中,有一个“表单”分类,选择该分类,可插入的表单对象快捷按钮就会出现。如下图: 可插入的对象,从左至右,包括: ?表单 ?文本字段 ?隐藏域 ?文本区域 ?复选框 ?单选按钮 ?单选按钮组 ?列表/菜单 ?跳转菜单 ?图像域 ?文件域 ?按钮 1.插入表单域 要在网页中插入表单对象,首先应该插入一个表单域,否则服务器将无法处理用户填写的信息。操作步骤如下: 步骤1:“插入”面板中,选择“表单”分类,单击左边第1个“表单”按钮,随即插入到网页中一个表单域,表单域在设计视图中显示为一个红色虚线框的范围。如图所示: 如果没有红色虚线框,执行菜单栏“查看/可视化助理/不可见元素”命令即可。 步骤2:设置表单域属性。使用鼠标单击虚线的边框,此时虚线框内出现黑色区域,表示该表单域被选中,属性面板如下: 表单域属性面板包括:

?表单名称:标识表单的唯一名称。 ?动作:指定处理该表单的动态页或脚本的路径。可以键入完整的路径,也可以单击“浏览文件”按钮指定到同一站点中包含该脚本或应用程序页的相应文件夹。如果没有相关程序支持的话,也可以使用E-mail的方式来传输表单信息,这种方式在动作文本框中键入:“mailto:电子邮件地址”。表示提交的信息将会发送到作者的邮箱中。比如 ?方法:用于选择表单数据传输到服务器的方法。可选择速度快但携带数据量小的GET方法,或者数据量大的POST方法。一般使用POST方法。 ?目标:指定打开窗口的方式。 ?MIME类型:指定对提交给服务器进行处理的数据使用MIME编码类型。 ?类:定义好的CSS样式。 2.插入文本域 当浏览者浏览网页需要输入文字资料时,像姓名、地址、E-mail或稍长一些的个人介绍等栏目,在制作时就可以使用文本域,它在浏览器中将显示为一个文本框。 具体操作如下: 步骤1:插入文本域前请确定首先插入了一个表单域,并且将光标放入表单域中。如果在表单域外插入文本域,Dreamweaver会弹出提示框,是否创建一个表单域。 步骤2:在“插入”面板中,选择“表单”分类,单击左边第2个“文本字段”按钮,随即插入到网页中一个文本域。可以在文本域前加入说明的文字,如“用户名”,告知浏览者需要填入的内容的类型。 步骤3:单击文本域,对文本域的属性面板进行设置: 文本域:输入文本字段的名称,该名称在该网页中是唯一的名称。名称不能包含空格或 特殊字符,可以使用字母数字字符和下划线的任意组合。 字符宽度:设置文本域中最多可显示的字符数。 最多字符数:设置单行文本域中所能输入的最多字符数。如果是空白,则可以输入任意 数量的文本。(最好对不同内容的文本域进行不同数量的限制,防止个别浏览者恶意输入大量数据,维护系统的稳定性。) 初始值:输入文本域中默认状态时显示的内容,当浏览者键入资料时初始文本被替代。 类型:显示了当前文本域的类型,包括“单行”、“多行”和“密码”。其中, ---单行是默认选项,只显示一行文本。 ---多行表示插入的文本可显示多行(如图)。

jquery mobile + html5 手机app表单跨域提交实例(手机app开发html5 juqery moblie phonegap系列一)

jquery mobile + html5 手机app表单跨域提交实例(手机app开发html5 juqery moblie phonegap系列一) 第一次写博文,把学习过程记录下来也留个底,免得以后不用都忘了。 确定用html5 +jquery moblie+ phonegap 框架作为app开发的主框架。一开始在网上找了很多资料,跟着学习了一下,然后下了很多代码, 结果发现一个很大的问题,网上的代码很多都tmd有bug,不知道是不是故意的还是怎么地,让我也走了很多弯路。不多废话开始实战。 1、开发工具的准备: 1.1 、jquery mobile :这个不用下载,直接在你的html文件中间加上以下代码就行了, 1.2 、html5 : 下载一个支持html5的浏览器就行了,支持的最好的是 Google Chrome ,这个还可以调试js,不错推荐。 1.3 、myEclipse 版本6.0以上就行,自带jdk 和tomcat ,这个写jsp当做服务器用。 1.4 、editplus 这个是文本编辑器,写html代码用的。 这一节的开发工具就准备这些,我们这节只在浏览器上面看效果,下节讲打包发布到安卓手机上面还需要一些东西。 2、开发流程: 2.1 制作提交用户名和密码的html5表单。 2.2 通过jsonp方式跨域提交到tomcat服务器上的jsp文件。 2.3 服务程序返回ok。 3、开发步骤: 3.1 html5文件,用editplus新建一个html文件,名字随便起。然后copy以下代码: Contact Example

PHP JQUERY AJAX 提交表单FORM详解

PHP jQuery Ajax Form表单提交实例解析,包括创建一个表单html页面、添加JQuery代码、jquery ajax表单提交、jquery ajax表单验证、反馈信息给用户,php ajax 表单验证,php ajax提交表单,php ajax form验证,php ajax提交form。 本实例用到JQuery类库本身的函数和功能,所有表单信息利用PHPMailer类库邮件的形式发送。 1、创建一个表单html页面 表单部分html代码 这里用一个id为contact_form来包含整个包含信息;这是有意义的,稍后在JavaScript与用户交互信息的时候会用到,这里form标签的属性里面既包含了method和action;这个意义其实不大,因为Javascript直接操作DOM,所以没有这两个属性也是可以的;务必要给用户输入的input标签加独立的id,这和第二点原理类似。否则,无法看到正常的效果。 2、添加JQuery代码 这里假设你已经从JQuery官方网站上下载了JQuery基库,然后上传到了你的WEB服务器,并添加到你要使用的网页中。

现在新建一个JS文件 第1行的function()函数与Jquery的document.ready函数用法和功能相同,都是在DOM准备完毕后自动触发。第2行里面是一个单击触发函数click(),需要注意的是,在HTML一页提交按钮上需要放置一个名为“button”的Class,以模拟实现submit 提交表单的功能,从第二点我们可以看出,JQuery可以很好的将结构和逻辑分离。 3、jquery ajax表单验证 在实际应用中,这一步是必不可少的。在用户漏填,错填某个项目时,及时提示。

JQuery提交表单 Form.js官方插件介绍

JQuery提交表单Form.js官方插件介绍 Form插件,支持Ajax,支持Ajax文件上传,功能强大,基本满足日常应用。 1、JQuery框架下载 https://www.doczj.com/doc/5016158684.html,/ 2、Form插件下载 https://www.doczj.com/doc/5016158684.html,/jquery/form/#download 3、Form插件的简单入门 第二步:jquery.js和form.js文件的包含

表单插件API提供了几个方法,让你轻松管理表单数据和进行表单提交。 ajaxForm 增加所有需要的事件监听器,为AJAX提交表单做好准备。ajaxForm不能提交表单。在document的ready函数中,使用ajaxForm来为AJAX提交表单进行准备。ajaxForm接受0个或1个参数。这个单个的参数既可以是一个回调函数,也可以是一个Options对象。 可链接(Chainable):可以。 实例: $('#myFormId').ajaxForm(); ajaxSubmit 马上由AJAX来提交表单。大多数情况下,都是调用ajaxSubmit来对用户提交表单进行响应。ajaxSubmit接受0个或1个参数。这个单个的参数既可以是一个回调函数,也可以是一个Options对象。 可链接(Chainable):可以。 实例: // 绑定表单提交事件处理器 $('#myFormId').submit(function() { // 提交表单 $(this).ajaxSubmit(); // 为了防止普通浏览器进行表单提交和产生页面导航(防止页面刷新?)返回false return false; }); formSerialize 将表单串行化(或序列化)成一个查询字符串。这个方法将返回以下格式的字符串:name1=value1&name2=value2。 可链接(Chainable):不能,这个方法返回一个字符串。 实例: var queryString = $('#myFormId').formSerialize(); // 现在可以使用$.get、$.post、$.ajax等来提交数据 $.post('myscript.php', queryString); fieldSerialize

表单提交中文乱码问题

jquery.form 提交中文时乱码(GBK 乱码)的解决方案 分类:jQuery2009-11-18 21:58 1758人阅读评论(0) 收藏举报 在使用jsp开始时,一不小心就会出现中文乱码的情况。通常可以使用如下方法解决: 第一种解决方法: 从jsp到servlet统一使用utf-8编码.全部使用utf-8编码能省去很多麻烦,但一点不足是utf-8编码对汉字是使用3-4个字节,会加大网络传输量。 第二种方法: 1.jsp页面使用GBK 2.使用servlet过滤器设置request.setCharacterEncoding("GBK");google一下就能找到很多怎么使用过滤器转换编码。 以上两种方法能解决大部分的乱码问题,特别是第一种方法,能解决使用ajax提交时的中文乱码问题。如果采用第二种方法,那么在使用ajax提交表单时仍然会有中文乱码。这是因为ajax方式提交时js使用的是utf-8的编码,过滤器使用gbk进行转码就不正确了,应该使用utf-8进行转码。要解决这个问题,网上也有很多个版本,其中一个是我曾经采用的在客户端使用encodeURI,然后再在服务器端进行URLDecoder.decode,这种方案在偶尔处理一下中文是可行的,但是如果页面有大量数据录入,那么这种方案是不可行的。有没有好的解决方法呢?在经过新一轮的google之后,还是找到了方法。参考 https://www.doczj.com/doc/5016158684.html, /topic/157698?page=1。原理就是根据httpheader中的内容来区分是ajax方式请求还是普通的请求。在jquery1.2.6中,ajaxSettings默认设置contentType 为"application/x-www-form -urlencoded",在ajax方法中设置 xhr.setRequestHeader("X-Requested-With", "XMLHttpRequest");,我们只要在servlet中根据这两个参数值来判断是不是通过xmlhttprequest发起的请求。这里值得一提的是jquery 在提交form 时对参数进行了encodeURIComponent调用,参见param方法 [javascript]view plainc opy 1.jQuery .each( a, function(){ 2. s.push( encodeURIComponent(this .name) + "=" + encodeURIComponent( thi s .value ) ); 3.});

jquery.form.js中文API

jquery.form.js中文API 关键字: jquery.form.js 英文原文:https://www.doczj.com/doc/5016158684.html,/jquery/form/#api 表单插件API提供了几个方法,让你轻松管理表单数据和进行表单提交。 ajaxForm 增加所有需要的事件监听器,为AJAX提交表单做好准备。ajaxForm不能提交表单。在document的ready函数中,使用ajaxForm来为AJAX提交表单进行准备。ajaxForm接受0个或1个参数。这个单个的参数既可以是一个回调函数,也可以是一个Options对象。 可链接(Chainable):可以。 实例: Java代码 1$('#myFormId').ajaxForm(); ajaxSubmit 马上由AJAX来提交表单。大多数情况下,都是调用ajaxSubmit来对用户提交表单进行响应。ajaxSubmit接受0个或1个参数。这个单个的参数既可以是一个回调函数,也可以是一个Options对象。 可链接(Chainable):可以。 实例: Java代码 2// 绑定表单提交事件处理器 3$('#myFormId').submit(function() { 4 // 提交表单 5 $(this).ajaxSubmit(); 6 // 为了防止普通浏览器进行表单提交和产生页面导航(防止页面刷新?)返回false 7return false; 8});

formSerialize 将表单串行化(或序列化)成一个查询字符串。这个方法将返回以下格式的字符串:name1=value1&name2=value2。 可链接(Chainable):不能,这个方法返回一个字符串。 实例: Java代码 9var queryString = $('#myFormId').formSerialize(); 10 11// 现在可以使用$.get、$.post、$.ajax等来提交数据 12$.post('myscript.php', queryString); fieldSerialize 将表单的字段元素串行化(或序列化)成一个查询字符串。当只有部分表单字段需要进行串行化(或序列化)时,这个就方便了。这个方法将返回以下格式的字符串:name1=value1&name2=value2。 可链接(Chainable):不能,这个方法返回一个字符串。 实例: Java代码 13var queryString = $('#myFormId .specialFields').fieldSerialize(); fieldV alue 返回匹配插入数组中的表单元素值。从0.91版起,该方法将总是以数组的形式返回数据。如果元素值被判定可能无效,则数组为空,否则它将包含一个或多于一个的元素值。 可链接(Chainable):不能,该方法返回数组。 实例: Java代码

第一节 HTML表单提交数据和JSP获得数据

第一节 HTML表单提交数据和JSP获得数据 为了学习掌握JSP动态网页的设计开发,我们先从大家比较熟悉的表单入手。以前在学习静态网页设计时,做好的表单无法提交数据,那是因为没有接收数据的程序。本节使用一组范例,由HTML的表单提交数据,并使用JSP动态网页获得数据,来说明他们之间的关系和工作原理。 一、范例的演示和代码清单 演示的前提: 1.配置好开发运行环境; 2.将随书光盘中的范例ch2,复制到resin2.1.6\doc文件夹内; 3.启动JSP引擎; 演示步骤: 1.启动IE,在地址栏键入http://127.0.0.1:8080/ch2/ch2-1.htm,如图2-1所示: 图2-1 2.在表单的姓名栏键入“张三”,年龄栏键入“21”,性别选择其中的一项,密码栏 键入“123”,然后点击“提交”按钮。屏幕出现2-2所示界面:

图2-2 注意:访问动态网页必须在启动JSP引擎后,在IE的地址栏键入IP地址和路径文件名,才能进行访问,不能使用直接双击打开的方式。 网页的页面上显示了所提交数据的全部内容。请注意,地址栏上的内容是:http://127.0.0.1:8080/ch2/ch2-1.jsp。这说明提交的数据已被ch2-1.jsp动态网页接收,并将其送到屏幕上进行显示。 当然,可以在表单中填写其他的内容,屏幕显示的内容会随之变化。但是如果在“年龄”项目中填写的不是数字,而是字母、汉字等不正确的内容,屏幕上也会将这些错误内容显示出来,甚至任何一项都不填写,直接点击“提交”按钮,动态网页仍能正常运行。这些问题,我们会在以后的章节中去一一解决。目前先要弄清HTML静态网页和JSP动态网页之间的关系。 两个网页的代码如下: 范例ch2-1.htm 1) 2) 3) 4)表单 5) 6) 7) 8)

使用表单提交数据

9)
10)  11)姓名: 12) 13)

jQuery formValidator使用说明

jQuery formValidator使用说明 说明:jQuery formValidator表单验证插件,它是基于jQuery类库,实现了js 脚本于页面的分离。对一个表单对象,你只需要写一行代码就可以轻松实现20种以上的脚本控制。现支持一个表单元素累加很多种校验方式,采用配置信息的思想,而不是把信息写在表单元素上,能比较完美的实现ajax请求。并结合jquery.boxy实现遮罩提示。 一、所需元素 jquery-1.3.2.js (需要jquery-1.3.2以上版本) formValidator.js (表单验证基础js) formValidatorRegex.js (表单验证所需正则js) jquery.boxy.js (遮罩提示js) validator.css (表单验证样式) boxy.css (遮罩提示样式) 二、使用说明 a)使用方法 i.加载所需js和css文件 ii.初始化验证控件 ($.formValidator.initConfig({formid:"form1",onerror:functi on(msg){Boxy.alert("

"+msg+"
",null,{title: "提示信息"});}});) iii.表单验证 ($("#nl").formValidator({onshow:"请输入的年龄(1-99岁之间)",onfocus:"只能输入1-99之间的数字哦",oncorrect:"恭喜你,你输对了 "}).inputValidator({min:1,max:99,type:"value",onerrormin:"你输入的值必须大于等于1",onerror:"年龄必须在1-99之间,请确认"}).defaultPassed(); });) b)参数说明: i.初始化验证控件:initConfig 1.Formid (form 表单 id) 2.Debug (是否使用debug模式,默认false) 3.Validatorgroup (验证表单分组) 4.Alertmsg (alert输出提示信息,默认false) 5.Boxyalertmsg (boxy.alert输出提示信息,默认false) 6.Validobjectids (多个表单id,用“,”分隔) 7.Onsuccess (成功时回调涵数) 8.Onerror (失败时回调涵数) 9.Submitonce (是否提交表单,默认false) 10.Autotip (是否使用自动验证提示,默认false) ii.表单验证 验证方式有如下几种 1.formValidator (基础验证) 初始参数: validatorgroup : "1",

HTML FORM表单,input标签的说明

HTML 表单(Form)是 HTML 的一个重要部分,主要用于采集和提交用户输入的信息。
一个简单的 HTML 表单,包含两个文本输入框和一个提交按钮:
First name: Last name:




HTML 表单(Form)常用控件(Controls)
HTML 表单(Form)常用控件有:
? ? ? ? ? ? ?
input type="text" 单行文本输入框 input type="submit" 将表单(Form)里的信息提交给表单里 action 所指向的文件 input type="checkbox" 复选框 input type="radio" 单选框 select 下拉框 textArea 多行文本输入框 input type="password" 密码输入框(输入的文字用*表示)
表单控件(Form Control):单行文本输入框(input type="text")
单行文本输入框允许用户输入一些简短的单行信息,比如用户姓名。例句如下:
表单控件(Form Control):复选框(input type="checkbox")
复选框允许用户在一组选项里,选择多个。示例代码: 苹果
桔子
芒果
用 checked 表示缺省已选的选项。 桔子

表单控件(Form Control):单选框(input type="radio")
使用单选框,让用户在一组选项里只能选择一个。示例代码: 苹果
桔子
芒果
用 checked 表示缺省已选的选项。

jQuery formValidator表单验证插件

jQuery formValidator表单验证插件是什么? jQuery formValidator表单验证插件,它是基于jQuery类库,实现了js脚本于页面html代码的分离。你可以划分多个校验组,每个组的校验都是互不影响。对一个表单对象,你只需要写一行代码就可以轻松实现无数种(理论上)脚本控制。目前支持5种大的校验方式,分别是:inputValidator(针对input、textarea、select控件的字符长度、值范围、选择个数的控制)、compareValidator(提供2个对象的比较,目前可以比较字符串和数值型)、ajaxValidator(通过ajax到服务器上做数据校验)、regexValidator(提供可扩展的正则表达式库)、functionValidator (可使用外部函数来做校验) 本插件于其他校验控件最大的区别有3点: 1、校验功能可以扩展。 对中文、英文、数字、整数、实数、Email地址格式、基于HTTP协议的网址格式、电话号码格式、手机号码格式、货币格式、邮政编码、身份证号码、QQ号码、日期等等这些控制,别的表单校验控件是代码里写死的,而formValidator是通过外部js文件来扩展的,你可以通过写正则表达式和函数来无限的扩展这些功能。 2、实现了校验代码于html代码的完全分离。 你的所有信息都无需配置在校验表单元素上,你只要在js上配置你的信息。使美工(界面)和javascript工程师的工作不交织在一起 3、你只需写一行代码就能完成一个表单元素的所有校验。你只需要写一行代码就能完成一下所有的控制 ?支持所有类型客户端控件的校验 ?支持jQuery所有的选择器语法,只要控件有唯一ID和type属性 ?支持函数和正则表达式的扩展。提供扩展库formValidatorReg.js,你可以自由的添加、修改里面的内容。 ?支持2种校验模式。第一种:文字提示(showword模式);第二种:弹出窗口提示(showalert模式) ?支持多个校验组。如果一个页面有多个提交按钮,分别做不同得提交,提交前要做不同的校验,所以你得用到校验组的功能。 ?支持4种状态的信息提示功能,可以灵活的控制4种状态是否显示。第一种:刚打开网页的时候进行提示;第二种:获得焦点的时候进行提示;第三种:失去焦点时,校验成功时候的提示;第四种:失去焦点时,校验失败的错误提示。 ?支持自动构建提示层。可以进行精确的定位。 ?支持自定义错误提示信息。

表单multipart(form-data)

Java中,当表单含有文件上传时,提交数据的如何读取 当提交表单里包含文件上传的时候,即Form的enctype属性值为multipart/form-data时,后台是无法像普通表单那样通过request.getParameter来获取用户提交的数据的。(说实话,我经常因为忘记这个问题而浪费好多调查时间。) 1.// 判断enctype属性是否为multipart/form-data 2.boolean isMultipart = ServletFileUpload.isMultipartContent(request); 3. 4.// Create a factory for disk-based file items 5.DiskFileItemFactory factory = new DiskFileItemFactory();

7.// 当上传文件太大时,因为虚拟机能使用的内存是有限的,所以此时要通过临时文件来实现 上传文件的保存 8.// 此方法是设置是否使用临时文件的临界值(单位:字节) 9.factory.setSizeThreshold(yourMaxMemorySize); 10. 11.// 与上一个结合使用,设置临时文件的路径(绝对路径) 12.factory.setRepository(yourTempDirectory); 13. 14.// Create a new file upload handler 15.ServletFileUpload upload = new ServletFileUpload(factory); 16. 17.// 设置上传内容的大小限制(单位:字节) 18.upload.setSizeMax(yourMaxRequestSize); 19. 20.// Parse the request 21.List items = upload.parseRequest(request); 22. 23.Iterator iter = items.iterator(); 24.while (iter.hasNext()) { 25.FileItem item = (FileItem) iter.next(); 26. 27.if (item.isFormField()) { 28.//如果是普通表单字段 29.String name = item.getFieldName(); 30.String value = item.getString(); 31.... 32.} else { 33.//如果是文件字段 34.String fieldName = item.getFieldName(); 35.String fileName = item.getName(); 36.String contentType = item.getContentType(); 37.boolean isInMemory = item.isInMemory(); 38.long sizeInBytes = item.getSize(); 39....

jquery如何进行表单验证样例

JQuery笔记-表单验证大全

jquery.validate.js 是 jquery 旗下的一个验证插件,借助 jquery 的优势,我们可以迅速验证一些常见的输入 , 并且可以自己扩充自己的验证方法。 举个例子,有这么一个表单: view plaincopy to clipboardprint?

Validating a complete form
Validating a complete form

PHP+Ajax+jQuery(容易)

《php+ajax+jquery(容易)》试卷 得分 一、单选题(每题2分,共计30分) 1.请阅读以下程序代码,输出结果正确的是()。() A、0 B、36 C、28 D、27 2.下列PDO获取结果集的方法错误的是()。() A、fetch() B、fetchColumn() C、fetchAll() D、fetchRow() 3.关于以下在开发中比较常见的状态码描述错误的是()。() A、状态码200表示服务器成功处理了客户端的请求。 B、状态码302表示请求的资源从不同的URI响应请求,但请求者应继续使用原有位置来进行以后的请求。 C、状态码404表示服务器拒绝处理客户端的请求。 D、状态码500表示服务器发生错误,无法处理客户端的请求。 4.在站点根目录下有三个文件,代码如下,分析下面的说法哪个是正确的()。文件一:Mysql.class.php文件二:Oracle.class.php文件三:index.php() A、执行index.php将会创建两个对象,分别是$m、$o B、执行index.php将会报错,因为找不到类文件 C、执行index.php会在浏览器中输出"thisismysql" D、执行index.php会在浏览器输出"thisisoracle" 5.下面选项中,实现查询表中记录的关键字是()。() A、DROP B、SELECT C、UPDATE D、DELETE 6.下列选项中,不属于赋值运算符的是()。() A、“=” B、“+=” C、“.=” D、“==” 7.在使用PHP操作数据库时,若考虑返回很大的结果集会占用多少内存时需调用()函数以释放系统资源。() A、mysql_close() 总分题号一二三四五题分 得分

jsp表单提交到后台

jsp表单处理 [html]view plain copy 1. 2.

3. 4. 5. 6. 7. 8.
人员信息录入
9. 10. 11. 16. 17. 18.
12. 13. 14. 15.

19.

20.人员信息 21. 22. 23. 24. 27. 28. 31. 32. 33. 36. 37.
用户名: 25. 26.*
登陆密码:
29. 30.*
性别: 34. 男 35.
出生日期:

jquery中 html()、text() 、val() + 常用表单元素

1..html()用为读取和修改元素的HTML标签 2..text()用来读取或修改元素的纯文本内容 3..val()用来读取或修改表单元素的value值。 这三个方法功能上的对比 1..html(),.text(),.val()三种方法都是用来读取选定元素的内容;只不过.html()是用来读取元素的 HTML内容(包括其Html标签),.text()用来读取元素的纯文本内容,包括其后代元素,.val()是用来读取表单元素的"value"值。其中.和.text()方法不能使用在表单元素上,而.val()只能使用在表单元素上;另外.html()方法使用在多个元素上时,只读取第一个元素;.val()方法和.html()相同,如果其应用在多个元素上时,只能读取第一个表单元素的"value"值,但是.text()和他们不一样,如果.text()应用在多个元素上时,将会读取所有选中元素的文本内容。【text也是只能读取第一个选中元素的文本】 2..html(htmlString),.text(textString)和.val(value)三种方法都是用来替换选中元素的内容,如果 三个方法同时运用在多个元素上时,那么将会替换所有选中元素的内容。 3..html(),.text(),.val()都可以使用回调函数的返回值来动态的改变多个元素的内容。 例子:

here is a paragram
here is a big DIV
function showVal() { var div = $("#div"); alert("showVal(): "+div.val()); 显示为空 } function showHtml() { var div = $("#div"); alert("showHtml(): "+div.html()); 显示为: here is a paragram

jQuery.validity.js 使用说明

jQuery 表单检验插件 validity 作者:kevin G 时间:2009-4-10 1 不需要编写 JavaScript 代码, 只要按手册约定给表单元素设置好相关属性,即可实现自动验证,如 : 如此,即可实现验证效果了,当文本框失败焦点 (onblur) 的时候,如果文本框为空,则会在其其后提示 “ 不能为空 ” 。 2 目前支持以下条件验证: 不能为空 require 电子邮件地址 email 电话号码(支持分机号) phone 手机号码 mobile url 地址 url 身份证号码 idCard 货币 currency 正整数 number 邮编 zip IP 地址 ip QQ 号码(新版的 QQ 帐号可使用 Email, 建议使用正则自定义验证) qq 正负整数 integer 小数 double 英文字母 english 纯汉字 chinese 用户名 ( 数字及字母组合的字符串 ) userName 安全字符串(不能包含 ! # < > ? * $ + - =@ % . * { } ( ) | \ / ~ ^ 等字符的串) isSafe 输入长度限制(即输入长度必须在一定范围内) limit / limitB 日期 date 密码重复匹配 repeat 整数或小数值必须在一定范围内(比如年龄必须在 18 至 60 岁之间) range 数值比较 (比如年龄必须大于 18, 但没有上限 / 至多购买 100 件等等,不能为 0, 必须为 1 等等,相当于只有一边范围的) compare 复选框必须选中 m 到 n 个 group 下拉框必须选中 compare/require Ajax 服务器端检验 ajax 自定义正则表达式 custom 多条件组合验证 require|limit 3 兼容 IE6/IE7/IE8/FireFox/Safari/Opera 主流浏览器 如何使用 validity 基本 jquery 扩展,所以,你得在你的 web 页面中加载 jquery 库及 validity 库,在 与 之间加入以下代码: 接下来,就是定义你的表单

文本预览
相关文档 最新文档