TML 5对表单新增了很多功能和属性,可以更加方便地进行表单开发,form属性代码如下:
所以在HTML 5中定义了表单的从属关系,而不再完全依赖form的位置。在下面的代码中,输入框txtPhone是属于表单myForm的,因此可以提交输入框内容。在之前的HTML中这种写法是不能提交txtPhone输入框的内容的。 placeholder属性一般用于文本输入框上,其主要作用是当文本框处于未输入的状态并且内容为空时,显示一段提示文本内容。
<input type="text" id="txtUserName" class="form-control" placeholder="请输入用户名"/>
这个属性达到的效果是我们常见的水印效果,如图所示。
autofocus属性的作用是指定控件自动活动的焦点,一个页面中只能有一个控件具有该属性。
HTML 5允许单行文本框中使用list属性,配合datalist元素一起使用。list主要用于提示文本框输入,datalist用于提供数据源,目前支持该特性的浏览器较少。
Autocomplete属性用于完成自动输入的功能,有两个值;on和off,分别代表自动完成输入和禁止自动完成输入。很多浏览器不支持该属性,但是自动完成插件是笔者平时使用较多的。
Required属性是用作必填属性,如果使用到了这个属性则当表单中的元素为空时无法提交,此属性作用于输入框元素上。
于HTML5基础知识(3)新增的Input类型(重要)这一节没有审核通过,现在简单介绍一下这节:
html5新曾的Input类型主要有:email邮箱验证,url 网址验证,number数字验证,range范围,Date pickers (date, month, week, time, datetime, datetime-local)时间日期,search搜索验证,color颜色选取,tel电话验证等等
Input 类型 - email 验证邮箱 写法:
E-mail: <input type="email" name="user_email" />
Input 类型 - url 验证url,写法:
<input type="url" name="user_url" />
Input 类型 - number 验证数字
Input 类型 - range 验证输入范围:
<input type="range" name="points" min="1" max="10" />
Input 类型 - Date Pickers(日期选择器)分别有:
date - 选取日、月、年
month - 选取月、年
week - 选取周和年
time - 选取时间(小时和分钟)
datetime - 选取时间、日、月、年(UTC 时间)
datetime-local - 选取时间、日、月、年(本地时间)
Input 类型: color,主要用于选取颜色
<input type="color" name="favcolor">
Input 类型: tel 验证电话号码(不推荐)
可能是这些知识大家都在写,发布的时候提示“近期在全网出现过高度相似文章被认为是旧闻”,说多了都是泪!
datalist、keygen、Output这三种,但是都不是很推荐的,可以跳过!
datalist 元素 datalist 元素规定输入域的选项列表。不推荐
<input type="url" list="url_list" name="link" /><datalist id="url_list">
<option label="W3School" value="http://www.W3School.com.cn" />
<option label="Google" value="http://www.google.com" />
<option label="Microsoft" value="http://www.microsoft.com" /></datalist>
效果:
keygen 元素(现在无需了解)
keygen 元素的作用是提供一种验证用户的可靠方法。keygen 元素是密钥对生成器(key-pair generator)。当提交表单时,会生成两个键,一个是私钥,一个公钥。私钥(private key)存储于客户端,公钥(public key)则被发送到服务器。公钥可用于之后验证用户的客户端证书(client certificate)。
output 元素
output 元素用于不同类型的输出,比如计算或脚本输出:(现在无需了解)
<output id="result" onforminput="resCalc()"></output>
新的 form 属性:
autocomplete、novalidate
新的 input 属性:
autocomplete、autofocus、form、form overrides (formaction, formenctype, formmethod, formnovalidate, formtarget)、height 和 width、list、min, max 和 step、multiple、pattern (regexp)、placeholder、required,虽然很多,但是大部分都不常用,只介绍平时常用的!
(1)autocomplete属性规定 form 或 input 域应该拥有自动完成功能。
(2)autofocus 属性规定在页面加载时,域自动地获得焦点。
<input type="text" name="user_name" autofocus="autofocus" />
(3)form 属性规定输入域所属的一个或多个表单。form 属性必须引用所属表单的 id:
<form action="demo_form.asp" method="get" id="user_form">
姓名:<input type="text" name="fname" />
<input type="submit" />
</form>
性别: <input type="text" name="lname" form="user_form" />
(4)表单重写属性(form override attributes)允许您重写 form 元素的某些属性设定。表单重写属性有:
formaction - 重写表单的 action 属性
formenctype - 重写表单的 enctype 属性
formmethod - 重写表单的 method 属性
formnovalidate - 重写表单的 novalidate 属性
formtarget - 重写表单的 target 属性
<form action="demo_form.asp" method="get" id="user_form">
<input type="submit" value="Submit" />
<input type="submit" formaction="demo_admin.asp" value="Submit as admin" /></form>//实际运行的时候跳转demo_admin.asp
(5)min、max 和 step 属性
min、max 和 step 属性用于为包含数字或日期的 input 类型规定限定(约束)。
max 属性规定输入域所允许的最大值。
min 属性规定输入域所允许的最小值。
step 属性为输入域规定合法的数字间隔(如果 step="3",则合法的数是 -3,0,3,6 等)。
<input type="number" name="points" min="0"max="10"step="3" />
此例子只能填写0、3、6、9
(6)multiple 属性
multiple 属性规定输入域中可选择多个值。
<input type="file" name="img" multiple="multiple" />
//表示可以同时上传多个图片
(7)pattern 属性
pattern 属性规定用于验证 input 域的模式(pattern)。
模式(pattern) 是正则表达式。您可以在我们的 JavaScript 教程中学习到有关正则表达式的内容。
<input type="text" name="country_code"pattern="[A-z]{3}" title="Three letter country code" />
表示:只允许输入3个任意字母
(9)placeholder 属性
placeholder 属性提供一种提示(hint),描述输入域所期待的值。(这个常用,不做解释)
(10)required 属性
required 属性规定必须在提交之前填写输入域(不能为空)
Name: <input type="text" name="usr_name" required="required" />
新增input type 属性值
类型 使用示例 描述
email <input type="email"> 必须输入邮箱格式
tel <input type="tel"> 必须输入手机号码格式
url <input type="url"> 必须输入url格式
number <input type="number"> 必须输入数字格式
search <input type="search"> 必须搜索框(体现语义化)
range <input type="range"> 自由拖动滑块
time <input type="time"> 小时分钟
date <input type="date"> 年月日
datetime <input type="datetime"> 时间
month <input type="month"> 月年
week <input type="week"> 星期 年
color <input type='color'> 颜色
新增的input标签属性
属性 用法 含义
placeholder <input type="text" placeholder="请输入..."> 占位符 当用户输入的时候 里面的文字消失 删除所有文字,自动恢复
autofocus <input type="text" autofocus> 规定当页面加载时 input 元素应该自动获得焦点
multiple <input type="file" multiple> 多文件上传
autocomplete <input type="text" autocomplete="off"> 规定表单是否应该启用自动完成功能 有2个值,一个是on 一个是off on 代表记录已经输入的值 1.autocomplete 首先需要提交按钮2.这个表单您必须给他名字
required <input type="text" required> 必填项 内容不能为空
*请认真填写需求信息,我们会在24小时内与您取得联系。