本节讲的是表单元素的form,formaction属性,frommethod,formenctype属性,formtarget,autofocus属性,required,labels属性。

1、form属性

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

以往的写法:

 <body>
     <form id="testform">
         <input type="text"></input>
         <textarea form="testform"></textarea>
     </form>
 </body>

现在则可以这样写,好处是为表单添加样式时会更方便:

 <body>
     <form id="testform">
         <input type="text"></input>
     </form>
     <textarea form="testform"></textarea>
 </body>

2、formaction属性

在html4中,一个表单内的所有元素只能通过表单的action属性被统一提交到另一个页面,而在html5中,可以为所有的提交按钮增加不同的formaction属性,使单击不同的按钮时,可以将表单提交到不同的页面。

这里xxx1.jsp/xxx2.jsp/xxx3.jsp分别是是第一/二/三个服务器的地址。

 <body>
     <form id="testform">
         <input type="submit" value="v1" name="s1" formaction="xxx1.jsp"></input>
         <input type="submit" value="v2" name="s2" formaction="xxx2.jsp"></input>
         <input type="submit" value="v3" name="s3" formaction="xxx3.jsp"></input>
     </form>
 </body>

3、formmethod属性

在html4中,一个表单内只能有一个actoin属性来对表单内的所有元素统一提交,所以每个表单内页只有一个method属性来统一指定提交方法。在html5中,可以使用formmethod属性来对每一个表单元素分别指定不同的提交方法。

 <body>
     <form id="testform">
         <input type="submit" value="v1" name="s1" formaction="xxx1.jsp" formmethod="post"></input>
         <input type="submit" value="v2" name="s2" formaction="xxx2.jsp" formmethod="get"></input>
     </form>
 </body>

4、formenctype属性

在html4中,表单元素具有一个enctype属性,该属性用于指定在表单发送到服务器之前,应该如何对表单内的数据进行编码。在html5中,可以用formenctype属性,为表单的元素指定不同的编码方式。

text/plain:表单内的空格转换为加号,但不对表单内的特殊字符编码

multipart/form-data:不对文件进行编码,在使用包含控件时的表单时,必须使用该值

application/x-www-form-urlencoded:发送前编码所有字符;当表单action属性为get时,仍然用该编码方式把表单数据转换成字符

 <body>
     <form id="testform">
         <input type="submit" formenctype="text/plain"></input>
         <input type="submit" formenctype="multipart/form-data"></input>
         <input type="submit" formenctype="application/x-www-form-urlencoded"></input>
     </form>

5、formtarget属性

在html4中,表单元素具有一个target属性,该属性用于指定在何处打开表单提交后,所需要加载的页面。在Html5中,可以对多个提交按钮分别使用formtarget属性来分别指定。

formtarget属性一共有5种:

_blank:在新的窗口打开

_self:默认值,在相同的框架打开

_parent:在当前框架的父框架打开

_top:在整个窗口中打开

framename:在指定框架中打开

     <form id="testform">
         <input type="submit" formtarget="_blank" ></input>
         <input type="submit" formtarget="_self" ></input>
         <input type="submit" formtarget="_parent" ></input>
         <input type="submit" formtarget="_top" ></input>
         <input type="submit" formtarget="framename" ></input>
     </form>
 </body>

6、autofocus属性

为文本框、选择框或按钮控件加上autofocus属性,当画面打开时,该控件自动获得光标焦点。

 <body>
     <form>
         <input type="text"></input>
         <input type="text" autofocus></input>
     </form>
 </body>

7、required属性

html5中新增加的required属性可以应用在大多数输入元素上,在提交时,如果元素中的内容为空白,则不允许提交,同时在浏览器中显示信息提示文字。

 <body>
     <form action="xxx.jsp">
         <input type="text" required="required"></input>
         <button type="submit">提交</button>
     </form>
 </body>

8、labels属性

在html5中,为所有可使用标签的表单元素、button、select元素等,定义了一个labels属性,属性值为一个NodeList对象,代表该元素所绑定的标签元素所构成的集合。

 <body>
     <script type="text/javascript">
         function Validate(){
             var txtName = document.getElementById("txt_name");
             var button =document.getElementById("btnValidate");
             var form = document.getElementById("testform");
             if (txtName.value.trim()=="") {
                 var label = document.createElement("label");
                 label.setAttribute("for","txt_name");
                 form.insertBefore(label,button);
                 txtName.labels[1].innerHTML="请输入姓名";
                 txtName.labels[1].setAttribute("style","font-size:9px;color:red");
             }
         }
     </script>
     <form id="testform">
         <label id="label" for="txt_name">姓名:</label>
         <input id="txt_name"></input>
         <input type="button" id="btnValidate" value="验证" onclick="Validate()"></input>
     </form>
 </body>

[html5] 学习笔记-表单新增元素与属性的更多相关文章

  1. [html5] 学习笔记-表单新增的元素与属性(续)

    本节主要讲解表单新增元素的controls属性.placeholder属性.List属性.Autocomplete属性.Pattern属性.SelectionDirection属性.Indetermi ...

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

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

  3. HTML5 学习笔记 表单属性

    HTML5新的表单属性 HTML5 的form和input 标签添加了几个新的属性 <form>新属性 autocomplete novalidate input 新属性 autocomp ...

  4. html5表单新增元素与属性2

    1.标签的control属性 在html5中,可以在标签内部放置一个表单元素,并且通过该标签的control属性来访问该表单元素. <script> function setValue() ...

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

    1 form 属性和 formaction 属性 本课时讲解在 HTML4 中,表单内的从属元素必须书写在表单内部,而在 HTML5 中,可以把他们书写在页面上任何地方,然后为该元素指定一个 form ...

  6. html5中form表单新增属性以及改良的input标签元素的种类

    在HTML5中,表单新增了一些属性,input标签也有了更多的type类型,有些实现了js才能实现的特效,但目前有些浏览器不能全部支持.下面是一些h5在表单和input标签上的一些改动. <!D ...

  7. HTML学习笔记 表单元素

    <form></form>代表表单 action:往什么地方提交 method:提交方式  get显示提交(不安全)  post隐视提交(安全) 提交内容:  name=输入的 ...

  8. 【html5】html5学习笔记2--表单

    html5 新增输入类型 html5新增了 email.number.Date pickers (date, month, week, time, datetime, datetime-local) ...

  9. [html5] 学习笔记-改良的input元素种类

    在html5中,大幅度增加与改良了input元素的种类,可以简单的使用这些元素来实现之前需要JS脚本来实现的功能. 1.url类型.email类型.date类型.time类型.datetime类型.d ...

随机推荐

  1. Android Quick Tip - ADB over WiFi

    http://stuffandtech.blogspot.jp/2012/03/android-quick-tip-adb-over-wifi.html   MAR 26 Android Quick ...

  2. MulticastSocket绑定端口的问题

    该文章由 Binkery 发布于 Binkery技术博客 http://www.binkery.com 如转载请注明出处,该文章的链接地址为 http://www.binkery.com/archiv ...

  3. (中等) POJ 1191 棋盘分割,DP。

    Description 将一个8*8的棋盘进行如下分割:将原棋盘割下一块矩形棋盘并使剩下部分也是矩形,再将剩下的部分继续如此分割,这样割了(n-1)次后,连同最后剩下的矩形棋盘共有n块矩形棋盘.(每次 ...

  4. 一、Hbase的安装

    一.Hbase配置 这个是我从网上找的一个版本,网上说配置成功. 先决条件: (1)hadoop的版本与hbase的版本要对应,主要是hadoop目录下的hadoop-core-1.0.4.jar的版 ...

  5. Bootstrap兼容处理

    接将一下代码引用到页面 </body> 之前 <script src="//cdn.bootcss.com/jquery/1.11.3/jquery.min.js" ...

  6. 打包程序时的证书问题(上传APP就出现Missing iOS Distribution signing indetity for)

    现象: 解决办法: 1.删除本地钥匙串中的这个文件,注意“系统”中的同名文件也必须删除 2.进入http://www.apple.com/certificateauthority/ 下载新的(WWDR ...

  7. ARM交叉编译工具链分类说明

    转载整理自:http://www.veryarm.com/cross-tools 从授权上,ARM交叉编译工具链分为免费授权版和付费授权版. 免费版目前有三大主流工具商提供,第一是GNU(提供源码,自 ...

  8. NSString总结

    [from]http://www.jianshu.com/p/7994b0ad6b88 问题:NSString到底是不是字符串? NSString 是 OC中专门处理字符串的对象!提供了转换大小写,拼 ...

  9. 微信小程序实操-image height:auto问题,url地址报错,“不在以下合法域名列表中”问题等

    1.修改app顶部title 使用API: wx.setNavigationBarTitle({ title: 'titleName'}); 2.ajax请求 wx.request({ url: 'h ...

  10. cordova环境搭建

    首先,需要了解一下cordova 和 phonegap 的关系.phoneGap是原先的名字,Cordova是phoneGap被捐给apache之后 用的项目名,phoneGap的名字也被保留了. 1 ...