跳到主要内容

HTML 表单


HTML 表单和输入

HTML 表单用于收集用户的输入信息。

HTML 表单表示文档中的一个区域,此区域包含交互控件,将用户收集到的信息发送到 Web 服务器。


在线实例

提示

在本页底端可以找到更多实例。

普通输入框表单

<form action="">
First name: <input type="text" name="firstname"/><br/>
Last name: <input type="text" name="lastname"/>
</form>
实时编辑器
结果
Loading...
备注

表单本身是不可见的。并且注意一个文本字段的默认宽度是20个字符

密码输入框表单

实时编辑器
结果
Loading...

HTML 表单

表单是一个包含表单元素的区域。

表单元素是允许用户在表单中输入内容,比如:文本域(textarea)、下拉列表(select)、单选框(radio-buttons)、复选框(checkbox) 等等。

我们可以使用 <form> 标签来创建表单:

<form>
.
input 元素
.
</form>

HTML 表单 - 输入元素

多数情况下被用到的表单标签是输入标签 <input>

输入类型是由 type 属性定义。

接下来我们介绍几种常用的输入类型。


文本域(Text Fields)

文本域通过 <input type="text"> 标签来设定,当用户要在表单中键入字母、数字等内容时,就会用到文本域。

实时编辑器
结果
Loading...
备注

表单本身并不可见。同时,在大多数浏览器中,文本域的默认宽度是 20 个字符。


密码字段

密码字段通过标签 <input type="password"> 来定义:

实时编辑器
结果
Loading...
备注

密码字段字符不会明文显示,而是以星号 * 或圆点 . 替代。


单选按钮(Radio Buttons)

<input type="radio"> 标签定义了表单的单选框选项:

实时编辑器
结果
Loading...

复选框(Checkboxes)

<input type="checkbox"> 定义复选框。

复选框可以选取一个或多个选项:

实时编辑器
结果
Loading...

提交按钮(Submit)

<input type="submit"> 定义提交按钮。

当用户单击确认按钮时,表单的内容会被传送到服务器。表单的动作属性 action 定义了服务端的文件名。

action 属性会对接收到的用户输入数据进行相关的处理:

实时编辑器
结果
Loading...

假如您在上面的文本框内键入几个字母,然后点击提交按钮,输入数据会被传送到服务器上 /examples/web/html_form_action/ 路由对应的页面,该页面将显示出输入的结果。

以上实例中有一个 method 属性,它用于定义表单数据的提交方式,可以是以下值:

  • post:指的是 HTTP POST 方法,表单数据会包含在表单体内然后发送给服务器,用于提交敏感数据,如用户名与密码等。
  • get:默认值,指的是 HTTP GET 方法,表单数据会附加在 action 属性的 URL 中,并以 ? 作为分隔符,一般用于不敏感信息,如分页等。
    例如:https://www.lectcode.com/examples/web/html_form_action/?username=lectcode ,username=lectcode 就是 get 方法提交的数据。
<!-- 以下表单使用 GET 请求发送数据到当前的 URL,method 默认位 GET。 -->
<form>
<label>Name:
<input name="submitted-name" autocomplete="name">
</label>
<button>Save</button>
</form>

<!-- 以下表单使用 POST 请求发送数据到当前的 URL。 -->
<form method="post">
<label>Name:
<input name="submitted-name" autocomplete="name">
</label>
<button>Save</button>
</form>

<!-- 表单使用 fieldset, legend, 和 label 标签 -->
<form method="post">
<fieldset>
<legend>Title</legend>
<label><input type="radio" name="radio"> Select me</label>
</fieldset>
</form>

更多实例

单选按钮(Radio buttons)

本例演示如何在 HTML 中创建单选按钮。

复选框(Checkboxes)

本例演示如何在 HTML 页中创建复选框。用户可以选中或取消选取复选框。

简单的下拉列表

本例演示如何在 HTML 页面中创建简单的下拉列表框。下拉列表框是一个可选列表。

预选下拉列表

本例演示如何创建一个简单的带有预选值的下拉列表。

文本域(Textarea)

本例演示如何创建文本域(多行文本输入控件)。用户可在文本域中写入文本。可写入字符的字数不受限制。

创建按钮

本例演示如何创建按钮。你可以对按钮上的文字进行自定义。

表单实例

带边框的表单

本例演示如何在数据周围绘制一个带标题的框。

带有输入框和确认按钮的表单

本例演示如何向页面添加表单。此表单包含两个输入框和一个确认按钮。

带有复选框的表单

此表单包含两个复选框和一个确认按钮。

带有单选按钮的表单

此表单包含两个单选框和一个确认按钮。

从表单发送电子邮件

此例演示如何从表单发送电子邮件。


HTML 表单标签

🆕 : HTML5新标签

标签描述
<form>定义供用户输入的表单
<input>定义输入域
<textarea>定义文本域 (一个多行的输入控件)
<label>定义了 <input> 元素的标签,一般为输入标题
<fieldset>定义了一组相关的表单元素,并使用外框包含起来
<legend>定义了 <fieldset> 元素的标题
<select>定义了下拉选项列表
<optgroup>定义选项组
<option>定义下拉列表中的选项
<button>定义一个点击按钮
<datalist>🆕指定一个预先定义的输入控件选项列表
<keygen>🆕定义了表单的密钥对生成器字段
<output>🆕定义一个计算结果