HTML5对表单进行了许多的改进,在这篇文章中,我选择了其中个人认为很有趣的三个变化:自动聚焦,对button元素的改进,把表单元素与非父元素的form表单挂钩进行简单的介绍。


1. 自动聚焦

自动聚焦的主要应用点是:我们可以为某个表单元素,如input设置一个autofocus属性,这样在这个页面刚刚加载出来的时候,这个input元素就会自动处于被选中的状态,直接可以进行输入,省去了用户手动选择的过程。这个特性使用js也可以做到,但是使用这个新特性无疑更加简单高效。
注意,autofocus属性只能用在一个input元素上,要是有几个元素都设置了这个属性,那么浏览器将会自动聚焦于最后一个设置了该属性的元素。

2. 对button元素的改进
HTML5为button元素添加了很多新的属性,原来的button元素在表单中的角色仅仅有三种,分别是“type=submit”、“type=reset”以及“type=button”。现如今,button元素相当于一个form表单的“大管家”。它可以:
    - 使用form属性与指定的表单相关联
    - 使用formaction属性覆盖form表单的action属性
    - 使用formenctype属性覆盖form表单的enctype属性
    - 使用formmethod属性覆盖form表单的method属性
    - 使用formtarget覆盖form表单的target属性
    - 使用formnovalidate属性覆盖form表单的novalidate,表明是否应该执行客户端数据有效性检查
所以现在我们可以在一个button元素中设置form表单的所有属性,如果你不嫌太过于拥挤的话。input元素也有如上所示的这些属性。

3. 把表单元素与非父元素的form表单挂钩
可能这个小标题表述的有些拗口,其实意思很简单,在HTML5之前,如果我们要提交一个人员信息的表单,我们需要把所有人员信息的输入框,选择框等等表单元素都放在一个form标签中,也就是说他们有公共的父元素。但是在HTML5的世界里,不在需要这样做了,我们只需要在开头声明一个form标签,给他设置一个id属性,然后我们就可以将那些表单元素分布在各个地方,唯一需要做的就是把这些表单元素的form属性值指定为所属的form表单的id值。代码如下所示:
 <!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style> </style>
</head>
<body>
<form id="myForm">
<p>
<label for="uname">姓名:</label>
<input name="uname" type="text" autofocus="autofocus"/>
</p>
</form>
<p>
<label for="uage">年龄:</label>
<input name="uage" type="text" form="myForm"/>
</p>
<button form="myForm" type="submit">Submit</button>
<button form="myForm" type="reset">Reset</button>
</body>
</html>


HTML5对表单的一些有意思的改进的更多相关文章

  1. HTML5对表单的约束验证

    在HTML5中增加了许多新的功能,用于表单提交到服务器之前对表单进行数据的验证(抢了javascript的饭碗),有了这些功能,即便是javascript没有加载进来还是可以确保基本的验证.换句话说, ...

  2. IT兄弟连 HTML5教程 HTML5表单 HTML表单中的get和post方法

    指引 表单在网页应用中十分重要,基本上任何一个网站都必须使用到表单元素,所以表单的美观和易于交互对于网站设计就变得十分重要.HTML5对目前Web表单进行了全面提升,使得我们使用表单更加智能.它在保持 ...

  3. HTML5 表单新增属性

    1. 表单内元素的form属性 在H5中可以把form放到页面的任何地方,然后为该元素指定一个form属性,属性值为该表单的id,这样就可以声明该元素从属于指定表单了 <form id=&quo ...

  4. HTML5学习总结-05 HTML5表单

    一 HTML5 新的类型 HTML5 拥有多个新的表单输入类型.这些新特性提供了更好的输入控制和验证. email url number range Date pickers (date, month ...

  5. HTML5学习笔记五:html5表单

    表单是页面上非常重要的一块内容,用户可输入的大部分内容都是在表单元素中完成的,与后台的交互大多数也是通过点击表单中的按钮. 一.新增的元素和属性 1.新增属性: 1.1 form属性:页面中的任何元素 ...

  6. HTML5 表单元素和属性

    HTML5 表单元素和属性学习 版权声明:未经博主授权,内容严禁转载 ! 表单元素简介 无论实现提交功能还是展示页面功能,表单在HTML中的作用都十分重要. 在其他版本的HTML中,表单能够包含的元素 ...

  7. jQuery html5Validate基于HTML5表单验证插件

    更新于2016-02-25 前面提到的新版目前线上已经可以访问: http://mp.gtimg.cn/old_mp/assets/js/common/ui/Validate.js demo体验狠狠地 ...

  8. html5表单新增的元素与属性

    1.表单内元素的form属性 在html4中,表单内的从属元素必须书写在表单内部, 而在html5中,可以把他们书写在页面上任何地方, 然后为该元素指定一个form属性,属性值为该表单的id,这样就可 ...

  9. HTML5表单新增元素与属性

    form属性 在html4中,表单的从属元素必须写在表单内部,而在HTML5中,可以把他们书写在任何地方,然后为该元素指定一个form属性,属性值为该表单的id,这样就可以声明该元素从属于指定表单了. ...

随机推荐

  1. jasperreports+iReport+jatoolsPrinter制作报表笔记

    此文章是基于 EasyUI+Knockout实现经典表单的查看.编辑 一. 准备工作 1. 点击此下载相关的文件,并把 ims 文件夹放到 ims 工程对应的路劲下 2. 参考网址:杰创打印控件 二. ...

  2. 模块与包&常用模块

    一.模块的使用 模块定义:一系列功能的集合体 分为三大类:1.自定义模块 2.内置模块(比如 time,os,sys) 3.第三方模块 模块的表现形式: 1.使用python编写的py文件 2.已被编 ...

  3. zookeeper安装及使用

    0. 下载并安装 1. 开机启动 cd  /etc/rc.d/init.d touch zookeeper vi zookeeper #!/bin/bash #chkconfig #descripti ...

  4. git管理之源切换

    Git remote 修改源 git commit -m "Change repo." # 先把所有为保存的修改打包为一个commit git remote remove orig ...

  5. Javascript之DOM的三大节点及部分用法

    DOM有三种节点:元素节点.属性节点.文本节点. 一.用nodeType可以检测节点的类型 节点类型 nodeType属性值 元素节点 1 属性节点 2 文本节点 3 这样方便在js中对各个节点进行操 ...

  6. latex 调整间隔

    转自:http://blog.sina.com.cn/s/blog_4a4927c70100phsb.html,感谢分享! 一.LATEX调整公式与正文间距离,调整空白大小:   调整空白命令: \s ...

  7. 【Leetcode】【Medium】Multiply Strings

    Given two numbers represented as strings, return multiplication of the numbers as a string. Note: Th ...

  8. 设置导出的excel数据

    /** * 设置导出的excel数据 * @param type $objPHPExcel * @param type $colModel * @param type $grid */public f ...

  9. Python学习---远程执行命令

    原则:发送一个接受一个 原理:发送执行命令的大小给客户端,客户端根据接受的大小判断是否全部接收了服务器sendall()发送的全部 利用send发送的全部数据都是bytes类型的,需要进行字符编码的转 ...

  10. 【深入理解JAVA虚拟机】第三部分.虚拟机执行子系统.3.函数调用与执行

    这章原名叫“虚拟机字节码执行引擎”,实际就是讲的函数如何调用和执行的. 1.概述 “虚拟机”是一个相对于“物理机”的概念,这两种机器都有代码执行能力, 其区别是物理机的执行引擎是直接建立在处理器. 硬 ...