HTML5 新表單屬性
HTML5 新的表單屬性
##HTML5 的<form> and< input>標籤新增了幾個新屬性.
<form>新屬性:
- ## autocomplete
- novalidate
#<input>新屬性:
- #autocomplete
- form
- formaction
- formenctype
- #formmethod
- ##formnovalidate
- ##formtarget
- height and width
- #list
##min and max
multiple
pattern (regexp)
placeholder
required
step
< ;form> / <input> autocomplete 屬性
#autocomplete屬性規定form 或input 網域應該擁有自動完成功能。
###當使用者在自動完成網域中開始輸入時,瀏覽器應該會在該網域中顯示填寫的選項。 ######提示: autocomplete 屬性有可能在 form元素中是開啟的,而在input元素中是關閉的。 ###注意: autocomplete 適用於 <form> 標籤,以及以下類型的 <input> 標籤:text, search, url, telephone, email, password, datepickers, range 以及 color。
實例
HTML form 中開啟autocomplete (一個input 欄位關閉autocomplete ):
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>php中文网(php.cn)</title> </head> <body> <form action="" autocomplete="on"> 姓名:<input type="text" name="fname"><br/> 留言<input type="text" name="content"><br/> E-mail: <input type="email" name="email" autocomplete="off"><br> <input type="submit"> </form> <p>填写并提交表单,然后重新刷新页面查看如何自动填充内容。</p> <p>注意 form的 autocomplete属性为 "on"(开),但是e-mail自动为“off”(关)。</p> </body> </html>
執行程式嘗試
提示:某在某些瀏覽器中,您可能需要啟用自動完成功能,以使該屬性生效。
<form> novalidate 屬性
##novalidate 屬性的一個boolean 屬性.novalidate屬性規定提交表單時不應該驗證form 或input 網域。實例
無驗證提交的表單資料<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>php中文网(php.cn)</title> </head> <body> <form action="" novalidate> E-mail: <input type="email" name="user_email"> <input type="submit"> </form> <p><strong>注意</strong>在 Safari 和 Internet Explorer 9 及之前的版本中不支持 novalidate 属性。</p> </body> </html>執行程式嘗試
<input> autofocus 屬性
autofocus 屬性是一個boolean 屬性.autofocus 屬性規定在頁面載入時,網域會自動地取得焦點。實例
讓"留言" input 輸入域在頁面載入時自動聚焦:<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>php中文网(php.cn)</title> </head> <body> <form action=""> 姓名: <input type="text" name="fname" ><br> 留言: <input type="text" name="content" autofocus><br> <input type="submit"> </form> <p><strong>注意:</strong> Internet Explorer 9及更早IE版本不支持input标签的 autofocus 属性。</p> </body> </html>執行程式嘗試一下
你可以把autofocus 換到姓名 input 輸入域,比較兩次運行結果看看有什麼不一樣
##<input> ; form 屬性form 屬性規定輸入域所屬的一個或多個表單。
提示:如需引用一個以上的表單,請使用空格分隔的清單。
實例
位於form表單外的input 欄位引用了HTML form (該input 表單仍屬於form表單的一部分):
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>php中文网(php.cn)</title> </head> <body> <form action="" id="form1"> 姓名: <input type="text" name="fname"><br> <input type="submit" value="Submit"> </form> <p> "留言" 字段没有在form表单之内,但它也是form表单的一部分。</p> 留言: <input type="text" name="lname" form="form1"> </body> </html>
執行程式嘗試
注意: IE不支援form屬性
<input> formaction 屬性
formaction 屬性用於描述表單提交的URL位址.
formaction 屬性會覆寫<form>元素中的action屬性.
#注意: formaction 屬性用於type="submit" 和type="image".
#實例
以下HTML form表單包含了兩個不同位址的提交按鈕:
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>php中文网(php.cn)</title> </head> <body> <form action="demo.php"> 姓名: <input type="text" name="fname"><br> 密码: <input type="text" name="lname"><br> <input type="submit" value="提交"><br> <input type="submit" formaction="admin.php" value="提交"> </form> </body> </html>
上面程式一個會提交到demo.php頁面,一個會提交到admin.php 頁面
##< ;input> formenctype 屬性
formenctype 屬性描述了表單提交到伺服器的資料編碼(只對form表單中method="post" 表單)
formenctype 屬性覆寫form 元素的enctype 屬性。
主要: 該屬性與 type="submit" 和 type="image" 配合使用。
實例
第一個提交按鈕已預設編碼發送表單數據,第二個提交按鈕以"multipart/form-data"編碼格式傳送表單資料:<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>php中文网(php.cn)</title> </head> <body> <form action="" method="post"> name: <input type="text" name="fname"><br> <input type="submit" value="提交"> <input type="submit" formenctype="multipart/form-data" value="以 Multipart/form-data 提交"> </form> </body> </html>執行程式嘗試
#
<input> formmethod 屬性
#formmethod 屬性定義了表單提交的方式。
formmethod 屬性覆寫了 <form> 元素的的method 屬性。
注意: 該屬性可以與 type="submit" 和 type="image" 配合使用。
實例
重新定義表單提交方式實例:
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>php中文网(php.cn)</title> </head> <body> <form action="" method="get"> 姓名: <input type="text" name="fname"><br> 密码: <input type="text" name="lname"><br> <input type="submit" value="提交"> <input type="submit" formmethod="post" formaction="demo-post.php" value="使用 POST 提交"> </form> </body> </html>
上面程式碼一個以get方式傳入一個頁面,一個以重複使用formmethod 重新定義提交方式,以post方式提交到emo-post.php頁面
<input> formnovalidate 屬性
novalidate 屬性是一個boolean 屬性.
novalidate屬性描述了<input> 元素在表單提交時無需被驗證。
formnovalidate 屬性會覆寫<form> 元素的novalidate屬性.
注意: formnovalidate 屬性與type="submit一起使用
#實例
兩個提交按鈕的表單(使用與不適用驗證):
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>php中文网(php.cn)</title> </head> <body> <form action=""> E-mail: <input type="email" name="userid"><br> <input type="submit" value="提交"><br> <input type="submit" formnovalidate="formnovalidate" value="不验证提交"> </form> </body> </html>
執行程式嘗試一下
<input> formtarget 屬性
formtarget 屬性指定一個名稱或一個關鍵字來指明表單提交資料接收後的展示。使用.
實例
兩個提交按鈕的表單, 在不同視窗中顯示:
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>php中文网(php.cn)</title> </head> <body> <form action=" "> 作者姓名: <input type="text" name="fname"><br> 书本名: <input type="text" name="lname"><br> <input type="submit" value="正常提交"> <input type="submit" formtarget="_blank" value="提交到一个新的页面上"> </form> </body> </html>
執行程式嘗試一下
<input> height 和width 屬性
##height 和width 屬性規定用於image 類型的<input> 標籤的圖片高度和寬度。 注意: height 和 width 屬性只適用於 image 類型的<input> 標籤。提示:圖像通常會同時指定高度和寬度屬性。如果圖像設定高度和寬度,圖像所需的空間 在載入頁時會被保留。如果沒有這些屬性, 瀏覽器不知道圖像的大小,並不能預留 適當的空間。圖片在載入過程中會使頁面佈局效果改變 (儘管圖片已載入)。
實例
定義了一個映像提交按鈕, 使用了height 和width 屬性:<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>php中文网(php.cn)</title> </head> <body> <form action=""> First name: <input type="text" name="fname"><br> Last name: <input type="text" name="lname"><br> <input type="image" src="http://img3.imgtn.bdimg.com/it/u=4163745010,2599120287&fm=21&gp=0.jpg" alt="Submit" width="100" height="80"> </form> </body> </html>運行程序嘗試一下
<input> list 屬性
list 屬性規定輸入域的datalist。 datalist 是輸入域的選項清單。實例
在<datalist>中預先定義<input> 值:<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>php中文网(php.cn)</title> </head> <body> <form action="" method="post"> <input list="browsers" name=""> <datalist id="browsers"> <option value="Internet Explorer"> <option value="Firefox"> <option value="Chrome"> <option value="Opera"> <option value="Safari"> </datalist> <input type="submit"> </form> </body> </html>執行程式試試看
<input> min 和max 屬性
min、max 和step 屬性用於為包含數字或日期的input類型規定限定(約束)。注意: min、max 和 step 屬性適用於下列類型的 <input> 標籤:date pickers、number 以及 range。
實例
<input> 元素最小值與最大值設定:
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>php中文网(php.cn)</title> </head> <body> <form action=""> 输入 1980-01-01 之前的日期: <input type="date" name="bday" max="1979-12-31"><br> 输入 2000-01-01 之后的日期: <input type="date" name="bday" min="2000-01-02"><br> 数量 (在1和5之间): <input type="number" name="quantity" min="1" max="5"><br> <input type="submit"> </form> </body> </html>
執行程式嘗試
注意: Internet Explorer 9及更早IE版本,Firefox不支援input標籤的max 和min 屬性。
注意: 在Internet Explorer 10中max 和 min屬性不支援輸入日期和時間,IE 10 不支援這些輸入類型。
<input> multiple 屬性
multiple 屬性是一個boolean 屬性.
multiple 屬性規定< ;input> 元素中可選擇多個值。
注意: multiple 屬性適用於下列類型的 <input> 標籤:email 和 file。 : email, and file.
實例
#上傳多個檔案:
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>php中文网(php.cn)</title> </head> <body> <form action=""> 选择图片: <input type="file" name="img" multiple> <input type="submit"> </form> <p>尝试选取一张或者多种图片。</p> </body> </html>
執行程式嘗試
<input> pattern 屬性
#pattern 屬性描述了一個正規表示式用來驗證<input> 元素的值。
注意:pattern 屬性適用於以下類型的<input> 標籤: text, search, url, tel, email, 和password.
##提示: 是用來全域 title屬性描述了模式.
提示: 您可以在我們的 JavaScript 教程中學習到有關正規表示式的內容
#########實例############下面的範例顯示了一個只能包含三個字母的文字域(不含數字及特殊字元):###
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>php中文网(php.cn)</title> </head> <body> <form action=""> 请输入3位字母: <input type="text" name="country_code" pattern="[A-Za-z]{3}" title="Three letter country code"> <input type="submit"> </form> </body> </html>###執行程式試試看## #############<input> placeholder 屬性##########
placeholder 屬性提供一個提示(hint),描述輸入域所預期的值。
簡短的提示在使用者輸入值前會顯示在輸入域上。
注意: placeholder 屬性適用於下列類型的 <input> 標籤:text, search, url, telephone, email 以及 password。
實例
input 欄位提示文字:
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>php中文网(php.cn)</title> </head> <body> <form action=""> 姓名:<input type="text" name="fname" placeholder="请输入你的姓名"><br> 密码:<input type="text" name="lname" placeholder="请输入你的密码"><br> <input type="submit" value="提交"> </form> </body> </html>
執行程式嘗試
<input> required 屬性
#required 屬性是一個boolean 屬性.
required 屬性規定必須在提交之前填入輸入域(不能為空)。
注意:required 屬性適用於以下類型的 <input> 標籤:text, search, url, telephone, email, password, date pickers, number, checkbox, radio 以及 file。
實例
不能為空的input欄位:
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>php中文网(php.cn)</title> </head> <body> <form action=""> 姓名: <input type="text" name="usrname" required> <input type="submit"> </form> </body> </html>
運行程序,不填入提交看看
<input> step 屬性
#step 屬性為輸入域規定合法的數字間隔。
如果step="3",則合法的數是-3,0,3,6 等
提示: step 屬性可以與max 和min 屬性創建一個區域值.
注意: step 屬性與以下type類型一起使用: number, range, date, datetime, datetime-local, month, time 和week.
#實例
規定input step步長為3:
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>php中文网(php.cn)</title> </head> <body> <form action=""> <input type="number" name="points" step="3"> <input type="submit"> </form> </body> </html>
執行程式嘗試
注意: Internet Explorer 9及更早IE版本,或Firefox不支援input標籤的step 屬性。
HTML5 <input> 標籤
##描述 | |
<form> | 定義一個form表單 |
<input> | ## <input> |