乐趣区

关于html5:HTML5新增表单元素和表单属性

  • 新表单元素
    <datalist> 选项列表。与 input 元素配合应用,定义 input 可能的值
    <keygen> 用于表单的密钥对生成器字段
    <output> 不同类型的输入,比方脚本的输入。
  1. <datalist>
    Safari 和 IE9 以下不反对 <datalist>,
    <datalist> 规定了输出域的选项内容,与 input 元素配合应用,定义 input 输出域的选项内容。
<form action=""method="">
<input list="browsers"><!-- 通过应用 input 外面的一个属性 list,跟 datalist 的 id 相分割 -->
<datalist id="browsers">
  <option value = "Internet Explorer">
  <option value = "Firefox">
  <option value = "Chrome">
  <option value = "Safari">
  <option value = "Opero">
</datalist>
</form>

2.<keygen>

IE 齐全不反对
作用:提供一种验证用户的牢靠办法
用于表单的密钥对生成器字段, 当提交表单时,会生成两个键,一个是私钥,一个公钥。私钥(private key)存储于客户端,公钥(public key)则被发送到服务器。公钥可用于之后验证用户的客户端证书(client certificate)。
<form action=""method="get">
  用户名: <input type="text" name="usr_name">
  加密: <keygen name="security">
  <input type="submit">
</form>

3.<output>

IE 齐全不反对
用于不同类型的输入,比方计算或脚本输入:
<form oninput="x.value=parseInt(a.value)+parseInt(b.value)">0
  <input type="range" id="a" value="50">100
  +<input type="number" id="b" value="50">
  =<output name="x" for="a b"></output>
</form>
  • 新表单属性
  1. <form> 新属性:
  • autocomplete 主动实现
    当用户在主动实现域中开始输出时,浏览器应该在该域中显示填写的选项。
    autocomplete 实用于 <form> 标签,以及以下类型的 <input> 标签:text, search, url, telephone, email, password, datepickers, range 以及 color。
    注:Opero 不反对
<form action=""method="" autocomplete="on">
    FirstName:<input type="text" name="fname"><br>
    LastName:<input type="text" name="lname"><br>
    E-mail:<input type="email" name="email" autocomplete="off"><br>
    <input type="submit" name="">
</form>

  • novalidate 不验证数据
    在提交表单时,不验证 form 或 input 里的货色。
    如,在个别状况下,input 的类型是 email,会有验证:

    如果设置 novalidate

<form action=""method="" novalidate="novalidate">
    E-mail:<input type="email" name="email">
    <input type="submit" name="">
</form>

注:Safari 不反对

  1. <input> 新属性:
  • autocomplete 主动实现
  • autofocus 主动取得焦点
FirstName:<input type = "text" name = "fname" autofocus/>

  • form 所属哪个 form 表单
    个别表单外的 input 字段应用 form 属性,来示意此 input 是哪个表单的一部分:
    留神:IE 不反对
<form action=""id="form1">
First name: <input type="text" name="fname"><br>
<input type="submit" value="提交">
</form>

<p> "Last name" 字段没有在 form 表单之内,但它也是 form 表单的一部分。当表当提交的时候会一起提交 </p>

Last name: <input type="text" name="lname" form="form1">

<p><b> 留神:</b> IE 不反对 form 属性 </p>
  • formaction 用于 形容表单提交的 URL 地址 ,会笼罩 <form> 元素中的 action 属性.
    用于 input 的 type=”submit” 和 type=”image” 的元素
    以下表单蕴含了两个不同地址的提交按钮:
<form action="demo-form.php"> 
 First name: <input type="text" name="fname"><br> 
 Last name: <input type="text" name="lname"><br> 
 <input type="submit" value="Submit"><br> 
 <input type="submit" formaction="demo-admin.php" 
  value="Submit as admin"> 
</form> 
  • formenctype 表单提交到服务器的数据编码 (只对 form 表单中 method=”post” 表单)
    会笼罩 form 元素的 enctype 属性。
    留神: 该属性与 input 的 type=”submit” 和 type=”image” 配合应用。
    如:
<form action="demo-post_enctype.php" method="post"> 
 First name: <input type="text" name="fname"><br> 
 <input type="submit" value="Submit"> 
 <input type="submit" formenctype="multipart/form-data" 
  value="Submit as Multipart/form-data"> 
</form> 

第一个提交按钮已默认编码发送表单数据,第二个提交按钮以 “multipart/form-data” 编码格局发送表单数据

  • formmethod 表单提交形式 ,会笼罩 <form> 的 method 属性。
    留神: 该属性能够与 type=”submit” 和 type=”image” 配合应用。
    如:从新定义表单提交形式:
<form action="demo-form.php" method="get"> 
 First name: <input type="text" name="fname"><br> 
 Last name: <input type="text" name="lname"><br> 
 <input type="submit" value="Submit"> 
 <input type="submit" formmethod="post" formaction="demo-post.php" 
  value="Submit using POST"> 
</form>   
  • formnovalidate 表单提交无需被验证 ,会笼罩 <form> 元素的 novalidate 属性.
    留神: formnovalidate 属性与 type=”submit” 一起应用
<form action=""> 
 E-mail: <input type="email" name="userid"><br> 
 <input type="submit" value="Submit"><br> 
 <input type="submit" formnovalidate value="Submit without validation"> <!-- 提交的时候不验证 -->
</form>   
  • formtarget 表单提交数据接管后,怎么的展现。
    会笼罩 <form> 元素的 target 属性.
    留神: formtarget 属性与 type=”submit” 和 type=”image” 配合应用.
<form action="/statics/demosource/demo-form.php">
  First name: <input type="text" name="fname"><br>
  Last name: <input type="text" name="lname"><br>
  <input type="submit" value="失常提交">
  <input type="submit" formtarget="_blank" value="提交到一个新的页面上">
</form>
  • <input> height 和 width 属性,仅用于 <input> 标签 type=”image” 的图像高度和宽度
    留神: height 和 width 属性只实用于 image 类型的 <input> 标签。
    提醒: 图像通常会同时指定高度和宽度属性。如果图像设置高度和宽度,图像所需的空间 在加载页时会被保留。如果没有这些属性,浏览器不晓得图像的大小,并不能预留 适当的空间。图片在加载过程中会使页面布局成果扭转(只管图片已加载)。
<form action="/statics/demosource/demo-form.php">
  First name: <input type="text" name="fname"><br>
  Last name: <input type="text" name="lname"><br>
  <input type="image" src="/statics/images/submit.gif"  alt="Submit" width="48" height="48">
</form>
  • list 示意 input 输出域的 datalist(datalist 是输出域的选项列表)
<input list="browsers"> 

<datalist id="browsers"> 
  <option value="Internet Explorer"> 
  <option value="Firefox"> 
  <option value="Chrome"> 
  <option value="Opera"> 
  <option value="Safari"> 
</datalist> 
  • min max step 用来给 input 类型为数字或日期的增加限定束缚的,最大最下值;
    留神: min、max 和 step 属性实用于以下类型的 <input> 标签:date pickers、number 以及 range。
<!--Enter a date before 1980-01-01: -->
<input type="date" name="bday" max="1979-12-31"> 

<!--Enter a date after 2000-01-01: -->
<input type="date" name="bday" min="2000-01-02"> 

<!--Quantity (between 1 and 5): -->
<input type="number" name="quantity" min="1" max="5"> 
  • multiple 多种多样 示意 <input> 元素中可抉择多个值。
    留神: multiple 属性实用于以下类型的 <input> 标签 type=”email” 和 type=”file”
<form action="/statics/demosource/demo-form.php">
  抉择图片: <input type="file" name="img" multiple>
  <input type="submit">
</form>

<p> 尝试选取一张或者多种图片。</p>
  • pattern 正则表达式 用于验证 <input> 元素的值。
    留神:pattern 属性实用于以下类型的 <input> 标签: text, search, url, tel, email, 和 password.
<!-- 一个只能蕴含三个字母的文本域(不含数字及特殊字符):-->
Country code: <input type="text" name="country_code" pattern="[A-Za-z]{3}" title="Three letter country code">
  • placeholder 占位 提供一种提醒(hint),形容输出域所期待的值。
    留神: placeholder 属性实用于以下类型的 <input> 标签:text, search, url, telephone, email 以及 password。
<input type="text" name="fname" placeholder="First name"> 
  • required 被要求的,必须的 ,规定必须在提交之前填写输出域(不能为空)。
    留神:required 属性实用于以下类型的 <input> 标签:text, search, url, telephone, email, password, date pickers, number, checkbox, radio 以及 file。
<!-- 不能为空的 input 字段:-->
Username: <input type="text" name="usrname" required>
  • step 步调、一步、步长 ,规定输出域非法的数字距离
    提醒:step 属性能够与 max 和 min 属性创立一个区域值.
    留神: step 属性与以下 type 类型一起应用: number, range, date, datetime, datetime-local, month, time 和 week.
<input type="number" name="points" step="3">
退出移动版