HTML Input 输入元素

本章描述HTML <input> 元素的不同属性。


value 属性

value 属性规定输入字段的初始值:

实例

具有初始(默认)值的输入字段:

<form>
  <label for="fname">First name:</label><br>
  <input type="text" id="fname" name="fname" value="John"><br>
  <label for="lname">Last name:</label><br>
  <input type="text" id="lname" name="lname" value="Doe">
</form>
亲自试一试 »

readonly 属性

readonly 属性规定输入字段为只读(不能修改):

无法修改只读输入字段(但是,用户可以对其添加制表符、高亮显示并从中复制文本)。

提交表单时将发送只读输入字段的值!

实例

只读输入字段:

<form>
  <label for="fname">First name:</label><br>
  <input type="text" id="fname" name="fname" value="John" readonly><br>
  <label for="lname">Last name:</label><br>
  <input type="text" id="lname" name="lname" value="Doe">
</form>
亲自试一试 »

disabled 属性

disabled 属性规定输入字段是禁用的。

被禁用的元素是不可用和不可点击的。

被禁用的元素不会被提交。

实例

禁用的输入字段:

<form>
  <label for="fname">First name:</label><br>
  <input type="text" id="fname" name="fname" value="John" disabled><br>
  <label for="lname">Last name:</label><br>
  <input type="text" id="lname" name="lname" value="Doe">
</form>
亲自试一试 »


size 属性

size 属性规定输入字段的尺寸(以字符计):

size 默认值为20。

注释: size 属性适用于以下输入类型:text、search、tel、url、email和password。

实例

设置输入字段的宽度:

<form>
  <label for="fname">First name:</label><br>
  <input type="text" id="fname" name="fname" size="50"><br>
  <label for="pin">PIN:</label><br>
  <input type="text" id="pin" name="pin" size="4">
</form>
亲自试一试 »

maxlength 属性

maxlength 属性规定输入字段允许的最大长度:

注释: 设置 maxlength 时,输入字段将不接受超过指定字符数的字符。但是,此属性不提供任何反馈。因此,如果要提醒用户,必须编写JavaScript代码。

实例

设置输入字段的最大长度:

<form>
  <label for="fname">First name:</label><br>
  <input type="text" id="fname" name="fname" size="50"><br>
  <label for="pin">PIN:</label><br>
  <input type="text" id="pin" name="pin" maxlength="4" size="4">
</form>
亲自试一试 »

min 和 max 属性

minmax 指定输入字段的最小值和最大值。

minmax 属性使用以下输入类型:number、range、date、datetime local、month、time和week。

提示: 同时使用最大值和最小值属性创建一系列合法值。

实例

设置最大日期、最小日期和系列法定值:

<form>
  <label for="datemax">Enter a date before 1980-01-01:</label>
  <input type="date" id="datemax" name="datemax" max="1979-12-31"><br><br>

  <label for="datemin">Enter a date after 2000-01-01:</label>
  <input type="date" id="datemin" name="datemin" min="2000-01-02"><br><br>

  <label for="quantity">Quantity (between 1 and 5):</label>
  <input type="number" id="quantity" name="quantity" min="1" max="5">
</form>
亲自试一试 »

multiple 属性

multiple属性是布尔属性。

如果设置,则规定允许用户在 input 元素中输入一个以上的值。

multiple 属性适用于以下输入类型:email 和 file。

实例

可接受多个值的文件上传字段:

<form>
  <label for="files">选择文件:</label>
  <input type="file" id="files" name="files" multiple>
</form>
亲自试一试 »

pattern 属性

pattern 属性规定用于检查 input 元素值的正则表达式。

pattern 属性适用于以下输入类型:text、search、url、tel、email、password。

提示: 请使用全局的 title 属性对模式进行描述以帮助用户。

提示: 请在我们的 JavaScript 教程中学习更多有关正则表达式的知识。

实例

只能包含三个字母(无数字或特殊字符)的输入字段:

<form>
  <label for="country_code">国家/地区代码:</label>
  <input type="text" id="country_code" name="country_code"
  pattern="[A-Za-z]{3}" title="三字母国家/地区代码">
</form>
亲自试一试 »

placeholder 属性

placeholder 属性规定用以描述输入字段预期值的提示(样本值或有关格式的简短描述)。

该提示会在用户输入值之前显示在输入字段中。

placeholder 属性适用于以下输入类型:text、search、url、tel、email 以及 password。

实例

带有占位符文本的输入字段:

<form>
  <label for="phone">输入电话号码:</label>
  <input type="tel" id="phone" name="phone"
  placeholder="123-45-678"
  pattern="[0-9]{3}-[0-9]{2}-[0-9]{3}">
</form>
亲自试一试 »

required 属性

required 属性是布尔属性。如果设置,则规定在提交表单之前必须填写输入字段。

required 属性适用于以下输入类型:text、search、url、tel、email、password、date pickers、number、checkbox、radio 和 file。

实例

必填的输入字段:

<form>
  <label for="username">Username:</label>
  <input type="text" id="username" name="username" required>
</form>
亲自试一试 »

step 属性

step 属性规定 input 元素的合法数字间隔。

示例:如果 step="3",则合法数字应该是 -3、0、3、6、等等。

提示: step 属性可与 max 以及 min 属性一同使用,来创建合法值的范围。

step 属性适用于以下输入类型:number、range、date、datetime、datetime-local、month、time 以及 week。

实例

拥有具体的合法数字间隔的输入字段:

<form>
  <label for="points">积分:</label>
  <input type="number" id="points" name="points" step="3">
</form>
亲自试一试 »

注释: 输入限制不是万无一失的,JavaScript 提供了许多添加非法输入的方法。为了安全地限制输入,还必须由接收方(服务器)进行检查!


autofocus 属性

autofocus 属性是布尔属性。如果设置,则规定当页面加载时 input 元素应该自动获得焦点。

实例

使 "First name" 输入字段在页面加载时自动获得焦点:

<form>
  <label for="fname">First name:</label><br>
  <input type="text" id="fname" name="fname" autofocus><br>
  <label for="lname">Last name:</label><br>
  <input type="text" id="lname" name="lname">
</form>
亲自试一试 »

height 和 width 属性

heightwidth 属性规定 input 元素的高度和宽度。仅用于 type="image"

提示: 请始终规定图像的尺寸。如果浏览器不清楚图像尺寸,则页面会在图像加载时闪烁。

实例

把图像定义为提交按钮,并设置 height 和 width 属性:

<form>
  <label for="fname">First name:</label>
  <input type="text" id="fname" name="fname"><br><br>
  <label for="lname">Last name:</label>
  <input type="text" id="lname" name="lname"><br><br>
  <input type="image" src="img_submit.gif" alt="Submit" width="48" height="48">
</form>
亲自试一试 »

list 属性

list 属性引用的 <datalist> 元素中包含了 <input> 元素的预定义选项。

实例

使用 datalist 设置预定义值的 input 元素:

<form>
  <input list="browsers">
  <datalist id="browsers">
    <option value="Internet Explorer">
    <option value="Firefox">
    <option value="Chrome">
    <option value="Opera">
    <option value="Safari">
  </datalist>
</form>
亲自试一试 »

autocomplete 属性

autocomplete 属性规定表单或输入字段是否应该自动完成。

当自动完成开启,浏览器会基于用户之前的输入值自动填写值。

autocomplete 属性适用于 <form> 以及如下 <input> 类型:text、search、url、tel、email、password、datepickers、range 以及 color。

提示:您可以把表单的 autocomplete 设置为 on,同时把特定的输入字段设置为 off,反之亦然。

实例

自动完成开启的 HTML 表单(某个输入字段为 off):

<form action="/action_page.php" autocomplete="on">
  <label for="fname">First name:</label>
  <input type="text" id="fname" name="fname"><br><br>
  <label for="lname">Last name:</label>
  <input type="text" id="lname" name="lname"><br><br>
  <label for="email">Email:</label>
  <input type="email" id="email" name="email" autocomplete="off"><br><br>
  <input type="submit" value="Submit">
</form>
亲自试一试 »

提示: 在某些浏览器中,您也许需要手动启用自动完成功能。


HTML 实验

学习训练

练习题:

在下面的输入字段中,添加标有 "Your name here" 的占位符。

<form action="/action_page.php">
<input type="text" >
</form>

开始练习


HTML 表单和输入元素

标签 描述
<form> 定义用于用户输入的 HTML 表单
<input> 定义输入控件

如需所有可用的 HTML 标签的完整列表,请访问 HTML 标签参考手册