05 HTML表单标签
1 表单标签
1.1 为什么需要表单
- 使用表单目的是为了收集用户信息。
- 网页中,需要跟用户进行交互,收集用户资料,此时就需要表单
1.2 表单的组成
- 在 HTML 中,一个完整的表单通常由表单域、表单控件(也称为表单元素)和 提示信息3个部分构成。
1.3 表单域
- 表单域是一个包含表单元素的区域
- 在 HTML 标签中, <form> 标签用于定义表单域,以实现用户信息的收集和传递。
- <form> 会把它范围内的表单元素信息提交给服务器.
<form action="url地址" method="提交方式" name="表单域名称">
各种表单元素控件
</form>
- 常用属性
属性 | 属性值 | 作用 |
---|---|---|
action | url地址 | 用于指定接收并处理表单数据的服务器程序的url地址 |
method | get/post | 用于设置表单数据的提交方式,取值为get或post |
name | 名称 | 用于指定表单的名称,以区分同一个页面中的多个表单域 |
1.4 表单控件(表单元素)
- 在表单域中可以定义各种表单元素,这些表单元素就是允许用户在表单中输入或者选择的内容控件。
1.4.1 <input>输入表单元素
- 表单元素中 <input> 标签用于收集用户信息。
- 在 <input> 标签中,包含一个 type 属性,根据不同的 type 属性值,输入字段拥有很多种形式(可以是文本字段、复选框、掩码后的文本控件、单选按钮、按钮等)。
- <input /> 标签为单标签
- type属性设置不同的属性值来指定不同的控件类型
<input type="属性值"/>
- type属性的属性值及其描述
属性值 | 描述 |
---|---|
button | 定义可点击按钮(多数情况下,用于通过JavaScript启动脚本) |
checkbox | 定义复选框 |
file | 定义输入字段和“浏览”按钮,供文件上传 |
hidden | 定义隐藏的输入字段 |
image | 定义图像形式的提交按钮 |
password | 定义密码字段,该字段中的字符被掩码 |
radio | 定义单选按钮 |
reset | 定义重置按钮,重置按钮会清除表单中的所有数据 |
submit | 定义提交按钮,提交按钮会把表单数据发送到服务器 |
text | 定义单行的输入字段,用户可在其中输入文本,默认宽度为20个字符 |
-
除 type 属性外,<input>标签还有其他很多属性,其常用属性如下:
属性 属性值 描述 name 由用户自定义 定义input元素的名称 value 由用户自定义 规定input元素的值 checked checked 规定此input元素首次加载时应当被选中 maxlength 正整数 规定输入字段中的字符的最大长度 -
name和value是每个表单元素都有的属性值,主要给后台人员使用
-
name表单元素的名字,要求单选按钮和复选框要有相同的name值
<!--radio (或者checkbox)如果是一组,我们必须给他们命名相同的名字 --> <input type="radio" name="sex"/>男 <input type="radio" name="sex"/>女
-
checked属性主要针对于单选按钮和复选框,主要作用一打开页面,就默认选中某个表单元素
-
maxlength是用户可以在表单元素输入的最大字符数,一般较少使用
-
-
常见问题:
-
有些表单元素想刚打开页面就默认显示几个文字怎么做?
答: 可以给这些表单元素设置 value 属性=“值”
用户名:<input type="text" value="请输入用户名"/>
-
页面中的表单元素很多,如何区别不同的表单元素?
答: name 属性:当前 input 表单的名字,后台可以通过这个 name 属性找到这个表单。页面中的表单很多,name 的主要作用就是用于区别不同的表单。
-
如果页面一打开就让某个单选按钮或者复选框是选中状态?
答: checked 属性:表示默认选中状态。用于单选按钮和复选按钮。
性 别: <input type="radio" name="sex" value="男" checked="checked" />男 <input type="radio" name="sex" value="女" />女
-
如何让input表单元素展示不同的形态? 比如单选按钮或者文本框
答: type属性:type属性可以让input表单元素设置不同的形态.
<input type="radio" name="sex" value="男" checked="checked" />男 <input type="text" value=“请输入用户名”>
-
1.4.2 <label>标签
- <label> 标签为 input 元素定义标注(标签)。
- <label> 标签用于绑定一个表单元素, 当点击<label> 标签内的文本时,浏览器就会自动将焦点(光标)转到或者选择对应的表单元素上,用来增加用户体验
<label for="sex">男</label>
<input type="radio" name="sex" id="sex" />
- 核心: <label> 标签的 for 属性应当与相关元素的 id 属性相同。
1.4.3 <select>下拉表单元素
- 使用场景: 在页面中,如果有多个选项让用户选择,并且想要节约页面空间时,我们可以使用<select>标签控件定义下 拉列表
<select>
<option>选项1</option>
<option>选项2</option>
<option>选项3</option>
...
</select>
- <select>中至少包含一堆<option>
- 在<option>中定义selected="selected"时,当前项即为默认选中项
1.4.4 <textarea>文本域表单元素
-
使用场景: 当用户输入内容较多的情况下,我们就不能使用文本框表单了,此时我们可以使用 <textarea> 标签。
在表单元素中,<textarea> 标签是用于定义多行文本输入的控件。
使用多行文本输入控件,可以输入更多的文字,该控件常见于留言板,评论
<textarea rows="3" cols="20">
文本内容
</textarea>
- 通过<textarea>标签可以轻松地创建多行文本输入框
- cols=“每行中的字符数”,rows=“显示的行数”,在实际开发中不会使用,都是用 CSS 来改变大小
2 查阅文档
经常查阅文档是一个非常好的学习习惯。
推荐的网址:
-
百度: http://www.baidu.com
-
W3C : http://www.w3school.com.cn/
-
MDN: https://developer.mozilla.org/zh-CN/