zoukankan      html  css  js  c++  java
  • HTML5对表单的一些有意思的改进

    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值。代码如下所示:
     1 <!DOCTYPE html>
     2 <html>
     3     <head>
     4         <meta charset="UTF-8">
     5         <title></title>
     6         <style>
     7 
     8         </style>
     9     </head>
    10     <body>
    11         <form id="myForm">
    12             <p>
    13                 <label for="uname">姓名:</label>
    14                 <input name="uname" type="text" autofocus="autofocus"/>
    15             </p>
    16         </form>
    17         <p>
    18             <label for="uage">年龄:</label>
    19             <input name="uage" type="text" form="myForm"/>
    20         </p>
    21         <button form="myForm" type="submit">Submit</button>
    22         <button form="myForm" type="reset">Reset</button>
    23     </body>
    24 </html>

  • 相关阅读:
    项目结束后一点心得
    提交disabled按钮的几种方法
    发现VS2005一个BUG
    单一文件上传防止粘帖及格式限制
    MessageBox.Show常用的2个方法
    一点感受一点体会
    EXCEL导入GridView,然后再汇入数据库.
    2根ECC内存
    (转载)gridview添加删除确认对话框
    反射调用Method
  • 原文地址:https://www.cnblogs.com/enjoymylift/p/5982550.html
Copyright © 2011-2022 走看看