HTML5 新表單屬性

HTML5 新的表單屬性

##HTML5 的<form> and< input>標籤新增了幾個新屬性.

<form>新屬性:

    ## autocomplete
  • novalidate

#<input>新屬性:

  • #autocomplete

  • #autofocus
  • 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> 標籤

#

##    <input>定義一個input 域
          #描述
    <form>定義一個form表單
    <input>



##############################################################
繼續學習
||
<!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>