HTML表单使用场景及分类

表单的组成

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

HTML表单使用场景及分类

表单域

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

在HTML标签中,<form>标签用于定义表单域,以实现用户信息的收集和传递。<form>会把它范围内的表单元素信息提交给服务器。

<form action="url地址" method="提交方式" name="表单域名称">
    各种表单元素控件
</form>
属性属性值作用
actionurl地址用于指定接收并处理表单数据的服务器程序的url地址
methodget/post用于设置表单数据的提交方式,其取值为get或post
name名称用于指定表单的名称,以区分同一个页面中的多个表单域

表单控件(表单元素)

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

<input>表单元素

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

在< input>标签中,包含一个type属性,根据不同的type属性值,输入字段拥有很多种形式(可以是文本字段、复选框、掩码后的文本控件、单选按钮、按钮等)。

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

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

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

举例:

<form>

用户名:<input type="text"> <br>
密码:<input type="password"> <br>
性别:男<input type="radio">女<input type="radio"> <br>
爱好:吃饭<input type="checkbox">睡觉<input type="checkbox">
<input type="submit" value="免费注册">

</form>

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

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

举例:

<form>

用户名:<input type="text" name="username" value="请输入密码"> <br>
密码:<input type="password" name="pwd"> <br>
性别:男<input type="radio" name="sex" value="男" checked="checked">女<input type="radio" name="sex" value="女"> <br>
爱好:吃饭<input type="checkbox" name="hobby" value="吃饭">睡觉<input type="checkbox" name="hobby" value="睡觉">

</form>

<label>标签

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

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

语法:

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

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

<select>下拉表单元素

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

语法:

<select>
     <option>选项1</option>
     <option>选项2</option>
     <option>选项3</option>
……
<select>
  1. < select>中至少包含一对< option>
  2. 在< option>中定义 selected=” selected”时,当前项即为默认选中项

<textarea>文本域元素

使用场景:当用户输入内容较多的情况下,我们就不能使用文本框表单了,此时我们可以使用< textarea>标签。

在表单元素中,< textarea>标签是用于定义多行文本输入的控件。使用多行文本输入控件,可以输入更多的文字,该控件常见于留言板,评论。

语法:

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

去除表单输入框轮廓线

给表单添加outline: 0; 或者outline: none; 样式后,就可以去掉默认的蓝色边框。

input { outline: none; }

去除文本域右下角三角(防止拖拽文本域)

在开发中,文本域右下角是不能有拖拽的,拖拽会带跑其他布局盒子影响显示效果!

tetxarea { resize:none; }

HTML5新增的input表单

属性值说明
type=”email”限制用户输入必须为Email类型
type=”url”限制用户输入必须为url类型
type=”date”限制用户输入必须为日期类型
type=”time”限制用户输入必须为时间类型
type=”month”限制用户输入必须为月类型
type=”week”限制用户输入必须为周类型
type=”number”限制用户输入必须为数字类型
type=”tel”手机号码
type=”search”搜索框
type=”color”生成一个颜色选择表单

HTML5新增的input属性

属性说明
requiredrequired表单拥有该属性表示其内容不能为空,必填
placeholder提示文本表单的提示信息,存在默认值将不显示
autofocusautofocus自动聚焦属性,页面加载完成自动聚焦到指定表单
autocompleteoff / on当用户在字段开始键入时,浏览器基于之前键入过的值,应该显示在字段中填写的选项。
默认已经打开,如autocomplete=”on”,关闭autocomplete=”off”需要放到表单内,同时加上name属性,同时成功提交
multiplemultiple可以多选文件提交(上传多个文件)

版权声明:本文为本站原创文章,由37.2℃发表,转载请注明出处,保留一切权利!

转载请注明:转载于37.2度云笔记

发表评论

邮箱地址不会被公开。

微信