# 表单标签

# 为什么需要表单

使用表单目的是为了收集用户信息

在我们网页中,也需要跟用户进行交互,收集用户资料,此时就需要表单。

# 表单的组成

在 HTML 中,一个完整的表单通常由表单域、表单控件(也称为表单元素)提示信息3个部分构成。

# 表单域

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

在 HTML 标签中,<form> 标签用于定义表单域,以实现用户信息的收集和传递。

<form> 会把它范围内的表单元素信息提交给服务器。

<form action="url地址" method="提交方式" name="表单域名称">
 各种表单元素控件
</form>
1
2
3

常用属性

属性 属性值 作用
action url地址 用于指定接收并处理表单数据服务器程序的url地址
method get/post 用于设置表单数据的提交方式,其取值为get/post
name 名称 用于指定表单的名称,以区分同一个页面中的多个表单域

注意:

  1. 在我们写表单元素之前,应该有个表单域把他们包起来
  2. 表单域是 form 标签

# 表单控件(表单元素)

在表单域中可以定义各种表单元素,这些表单元素就是允许用户在表单中输入或者选择的内容控件。

<input> 表单元素

在英文单词中,input 是输入的意思,而在表单元素中 <input> 标签用于收集用户信息。

<input> 标签中,包含一个 type 属性,根据不同的 type 属性值,输入字段拥有很多种形式(可以是文本

字段、复选框、掩码后的文本控件、单选按钮、按钮等)。

<input type="属性值" />
1
  • <input /> 标签为单标签
  • type 属性设置不同的属性值用来指定不同的控件类型

type 属性的属性值及其描述如下:

属性值 描述
button 定义可点击按钮
checkbox 定义复选框
file 定义输入字段和“浏览”按钮,供文件上传
hidden 定义隐藏的输入字段
image 定义图像形式的提交按钮
password 定义密码字段,该字段中的字符被掩码
radio 定义单选按钮
reset 定义重置按钮,重置按钮会清除表单中的所有数据
submit 定义提交按钮,提交按钮会把表单数据发送到服务器
text 定义单行的输入字段,用户可在其中输入文本。默认宽度为20个字符

除 type 属性外,<input>标签还有其他很多属性,其常用属性如下:

属性 属性值 描述
name 由用户自定义 定义input元素的名称
value 由用户自定义 规定input元素的值
checked checked 规定此input元素首次加载时应当被选中
maxlength 正整数 规定输入字段中的字符的最大长度
  1. name 和value 是每个表单元素都有的属性值,主要给后台人员使用。
  2. name 表单元素的名字, 要求 单选按钮和复选框要有相同的name值。
  3. checked属性主要针对于单选按钮和复选框,主要作用一打开页面,就要可以默认选中某个表单元素。
  4. maxlength 是用户可以在表单元素输入的最大字符数,一般较少使用。

有些表单元素想刚打开页面就默认显示几个文字怎么做?

答: 可以给这些表单元素设置 value 属性=“值”

用户名: <input type="text" value="请输入用户名" /> 
1

页面中的表单元素很多,如何区别不同的表单元素?

答: name 属性:当前 input 表单的名字,后台可以通过这个 name 属性找到这个表单。页面中的表单很多,

name 的主要作用就是用于区别不同的表单。

用户名: <input type="text" value="请输入用户名" name="username" /> 
1
  • name 属性后面的值,是自定义的
  • radio (或者checkbox)如果是一组,我们必须给他们命名相同的名字
<input type="radio" name="sex" /><input type="radio" name="sex" />
1
2

如果页面一打开就让某个单选按钮或者复选框是选中状态?

答: checked 属性:表示默认选中状态。用于单选按钮和复选按钮。

性 别: 
<input type="radio" name="sex" value="" checked="checked" /><input type="radio" name="sex" value="" />
1
2
3

<label> 标签

<label> 标签为 input 元素定义标注(标签)。

<label> 标签用于绑定一个表单元素,,当点击<label> 标签内的文本时,浏览器就会自动将焦点(光标)转到或者选择对应的表单元素上,用来增加用户体验。

语法:

<label for="sex"></label>
<input type="radio" name="sex" id="sex" />
1
2

核心<label> 标签的 for 属性应当与相关元素的 id 属性相同

<select> 表单元素

使用场景:在页面中,如果有多个选项让用户选择,并且想要节约页面空间时,我们可以使用<select>标签控件定义 下拉列表

语法:

<select>
 <option>北京</option>
 <option>上海</option>
 <option>南京</option>
 ...
</select>
1
2
3
4
5
6
  1. <select> 中至少包含一对<option>
  2. <option> 中定义 selected="selected" 时,当前项即为默认选中项。

<textarea> 表单元素

**使用场景:**当用户输入内容较多的情况下,我们就不能使用文本框表单了,此时我们可以使用 <textarea> 标签。在表单元素中,<textarea> 标签是用于定义多行文本输入的控件。使用多行文本输入控件,可以输入更多的文字,该控件常见于留言板,评论。

语法:

<textarea rows="3" cols="20">
 文本内容
</textarea>
1
2
3
  1. 通过 <textarea> 标签可以轻松地创建多行文本输入框。
  2. cols=“每行中的字符数” ,rows=“显示的行数”,在实际开发中使用 CSS 来改变大小。