共计 2719 个字符,预计需要花费 7 分钟才能阅读完成。
导读 | HTML 表单用于收集用户的输入信息。HTML 表单表示文档中的一个区域,此区域包含交互控件,将用户收集到的信息发送到 Web 服务器。 |
实例
以下实例创建了一个表单,包含两个输入框:
<form action="">
First name: <input type="text" name="firstname"><br>
Last name: <input type="text" name="lastname">
</form>
实例
以下实例创建了一个表单,包含一个普通输入框和一个秘密输入框:
<form action="">
Username: <input type="text" name="user"><br>
Password: <input type="password" name="password">
</form>
表单是一个包含表单元素的区域。
表单元素是允许用户在表单中输入内容,比如:文本域(textarea)、下拉列表(select)、单选框(radio-buttons)、复选框(checkbox)等等。
我们可以使用 <form> 标签来创建表单:
实例
<form>
.
input 元素
.
</form>
多数情况下被用到的表单标签是输入标签 <input>。
输入类型是由 type 属性定义。
接下来我们介绍几种常用的输入类型。
文本域通过 <input type=”text”> 标签来设定,当用户要在表单中键入字母、数字等内容时,就会用到文本域。
实例
<form>
First name: <input type="text" name="firstname"><br>
Last name: <input type="text" name="lastname">
</form>
浏览器显示如下:
注意: 表单本身并不可见。同时,在大多数浏览器中,文本域的默认宽度是 20 个字符。
密码字段通过标签 <input type=”password”> 来定义:
实例
<form>
Password: <input type="password" name="pwd">
</form>
浏览器显示效果如下:
注意:密码字段字符不会明文显示,而是以星号 * 或圆点 . 替代。
<input type=”radio”> 标签定义了表单的单选框选项:
实例
<form action="">
<input type="radio" name="sex" value="male"> 男 <br>
<input type="radio" name="sex" value="female"> 女
</form>
浏览器显示效果如下:
<input type=”checkbox”> 定义了复选框。
复选框可以选取一个或多个选项:
实例
<form>
<input type="checkbox" name="vehicle" value="Bike"> 我喜欢自行车 <br>
<input type="checkbox" name="vehicle" value="Car"> 我喜欢小汽车
</form>
浏览器显示效果如下:
<input type=”submit”> 定义了提交按钮。
当用户单击确认按钮时,表单的内容会被传送到服务器。表单的动作属性 action 定义了服务端的文件名。
action 属性会对接收到的用户输入数据进行相关的处理:
实例
<form name="input" action="html_form_action.php" method="get">
Username: <input type="text" name="user">
<input type="submit" value="Submit">
</form>
浏览器显示效果如下:
假如您在上面的文本框内键入几个字母,然后点击确认按钮,那么输入数据会传送到 html_form_action.php 文件,该页面将显示出输入的结果。
以上实例中有一个 method 属性,它用于定义表单数据的提交方式,可以是以下值:
- post:指的是 HTTP POST 方法,表单数据会包含在表单体内然后发送给服务器,用于提交敏感数据,如用户名与密码等。
- get:默认值,指的是 HTTP GET 方法,表单数据会附加在 action 属性的 URL 中,并以 ? 作为分隔符,一般用于不敏感信息,如分页等。例如:https://www.runoob.com/?page=1,这里的 page=1 就是 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>
标签 | 描述 |
---|---|
<form> | 定义供用户输入的表单 |
<input> | 定义输入域 |
<textarea> | 定义文本域 (一个多行的输入控件) |
<label> | 定义了 <input> 元素的标签,一般为输入标题 |
<fieldset> | 定义了一组相关的表单元素,并使用外框包含起来 |
<legend> | 定义了 <fieldset> 元素的标题 |
<select> | 定义了下拉选项列表 |
<optgroup> | 定义选项组 |
<option> | 定义下拉列表中的选项 |
<button> | 定义一个点击按钮 |
<datalist>New | 指定一个预先定义的输入控件选项列表 |
<keygen>New | 定义了表单的密钥对生成器字段 |
<output>New | 定义一个计算结果 |