表单简介

  Form表单主要用于用户与Web应用程序进行数据的交互,它允许用户将数据发给web应用程序,网页也可以拦截数据的发送以便自己使用。form通常由一到多个表单元素组成,这些表单元素是单行/多行文本框,下拉菜单,按钮,复选框,单选按钮,时间表单元素时 一般要配合label标签,用于描述其目的。其可用属性如下。

     action   用于处理表单信息的应用程序的地址。

     method    浏览器用来提交表单的HTTP方法。

      get        对应于Http协议的GET方法,表单数据被附加在uri上,使用"?"分隔

      post     对应于Http协议的POST方法,表单数据包含在HTTP协议的请求报文的体部。

    name   设定表单的名称

    target   表示浏览器接收到form的提交信息后在哪里显示回应。

       _self,_blank,_parent,_top这些值和超链接的相同

表单数据的内容类型

  通过enctype属性设定表单数据的内容类型

    1. application/x-www-form-urlencoded

      在发送前编码所有字符(默认)使用到的编码方式:

      1)控件的名称和值都被转义,空白字符使用【+】替换,保留的字符一般都是用来实现特定的目的,例如(: / ? ; @ = & 等)。非数字和字母的字符使用%HH(这里 HH表示两个十六进制数字,代表该字符的ASCII码)进行转换,

      2)控件的"名称/值"对按照它们在文档数据流中出现的顺序列出来。"名称""值"使 用"="分割,两个"名称/值"之间使用&隔开。

    2. multipart/form-data

      不对字符编码。在使用包含【文件上传控件】的表单时,必须使用该值。数据分成多个部分,每个部分代表一个结构良好的控件,作为文档数据流的一部分,每一 个部分都按照它们在文档数据流中出现的顺序依次发送到服务器端,并且,每一部分的边界不会出现在数据中。每一部分有一个content-desposition标题头,它的值的格式是: Content-Disposition:form-data;name="myControl"

    3. text/plain

      空格转换为 "+" 加号,但不对特殊字符编码。

表单组件

  input组件用于接受来自用户的数据,其可用属性如下

    1、type 用于设定组件类型

        text 单行文本框

        password 密码框,输入的内容将会被遮挡。

        checkbox 复选框,必须使用value属性来描述该组件所提交的值,使用checked属性默认选 中。

        radio 单选按钮,必须使用value属性来描述该组件所提交的值,使用checked属性默认 选中。一个单选按钮组中所有组件都应该具有相同的name值,这样,每次只能选中按钮组中的 某一个组件

        submit 提交按钮

        reset 重置按钮

        file文件按钮,该组件用于选中文件系统中的某个文件

        hidden 隐藏域,该组件不显示在页面中,但是其值会被提交。

        image 图像按钮,必须使用src来加载图片,使用alt来声明替换文本。

        button 普通按钮

    2、name 用于设定组件类型

    3、value 用于设定初始化,可选。     

    4、checked 单选框,复选框默认选中属性

    5、disabled 表示禁用组件,禁用组件的值也不能被提交

    6、size 当前控件的初始宽度,这个宽度以像素为单位。除非控件类型是text, password,这时宽度是整数值,表示字符的数目,默认为20

    7、maxlength 指定可以输入的字符的最大值。适用于控件类型为text,password。

  fieldset组件用于在一个web表单中对多个控件和标签进行分组

    1、disabled 禁用filedset元素,该属性会影响的fieldset的子元素

    2、name fieldset元素的名称

    fieldset的标题由标签提供

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<form action="">
<fieldset>
<legend>Title</legend>
<input type="radio" id="radio">
<label for="radio">click me</label>
</fieldset>
</form>
</body>
</html>

  input/button按钮组件用于接受来自用户的数据,其可用属性如下

    按钮控件

    1、input的type 指定控件类型

      button,submit,reset

    2、input的name 按钮名称。

    3、input的value 按钮所关联的值,会与name的值一同被提交

  label组件用于表示某一表单组件的标题 其可用属性如下

    1、for 与为设定标题的表单组件的ID值一致,上面的代码实例有

  select组件用于表示下拉列表或列表,其可用属性如下

    1、multiple 指定控件类型 布尔类型的值,表示是否允许多选,如果select元素不包含属性size和属性 multiple时,表单类型显示为菜单(组合框),如果使用了属性size和属性multiple中 的任意一个,则表单类型显示为列表框。

    2、size 显示的行数 当要表示一个可以滚动的列表时候,size表示同时展示的行数。默认值为0。表 示非列表显示

    3、disabled 表示禁用组件,禁用组件的值也不能被提交

    4、name 用于指定该组件的名字,会与其option子元素的value值组成键值对随其他表单数据一齐被提交

  option组件用于表示选项,常包含<select>、<optgroup>中,其可用的属性如下

    1、disabled 表示禁用组件,禁用组件的值也不能被提交

    2、value 定义控件的初始值。提交表单时,初始值会被提交给服务器。

    3、selected 表示该选项默认被选中

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<form action="">
<select name="address" id="">
<option value="北京" disabled>北京</option>
<option value="上海" selected>上海</option>
<option value="广州">广州</option>
</select>
</form>
</body>
</html>

  optgroup组件用于表示option的选项组,常包含在<select>中,其可用的属性如下

    1、disabled 表示禁用组件,禁用组件的值也不能被提交

    2、label 表示选项组的名称

    3、selected 表示该选项默认被选中

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<form action="">
<select name="address" id="">
<optgroup label="广东省">
<option value="广州">广州</option>
<option value="深圳">深圳</option>
</optgroup>
<optgroup label="江苏省">
<option value="苏州">苏州</option>
<option value="盐城">盐城</option>
</optgroup>
</select>
</form>
</body>
</html>

  textarea组件用于表示多行文本框,没有value属性,其值被包含在标签内 其可用属性如下

    1、rows 定义文本框的行数

    2、cols 定义文本框的列数

    3、warp 表示是否自动换行

       • off 不自动换行

      • hard自动硬回车换行,换行元素一同被传送到服务器中

      • soft自动软回车换行,换行元素不会传到服务器中

    4、disabled 表示禁用组件,禁用组件的值也不能被提交

    5、readonly 表示该组件只读,其值依然会被提交

    6、name 用于指定该组件的名字,会随着其值一同被提交到后台

新增表单组件

  progress组件用于表示任务的完成情况,常用于进度条 其可用的属性如下

    1、max 定义进度元素所要求的任务的工作量,默认值为1

    2、value 定义已经完成的工作量,如果max值为1,该值必须是介于0~1之间的小 数。

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<form action="">
<progress value="70" max="100"></progress>
</form>
</body>
</html>

  output 组件用于表示用户动作产生的结果 其可用的属性如下

    1、name 定义元素的名称

    2、for 其他元素的id列表,表明这些元素为计算提供了输入值(或其他影响)。

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<form action="" oninput="result.value=parseInt(a.value)+parseInt(b.value)">
<input type="range" name="b" value="50">+
<input type="number" name="a" value="10">=
<output name="result"></output>
</form>
</body>
</html>

  meter元素表示规定范围内的数量值。呈现的效果有一个类似于进度条

    例如:磁盘使用量,某个候选者的投票人数占 总投票人数的比例等

    1、value :在元素中特地表示出来的实际值,该值在min与max之间,如果未指定 ,该值默认为1

    2、min :指定规定范围时允许使用的最小值,默认为0

    3、max :指定规定范围时允许使用的最大值,默认为1

    4、low :规定范围的下限值必须小于或等于high属性的值

    5、high :规定范围的上限值(表示较高危险的意思)

    6、optimum :最佳值

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<p>He got a <meter low="69" high="80" max="100" value="70">B</meter>on this exam</p>
</body>
</html>

    datalist组件表示其他控件可用的值,其值通过<option>作为datalist的子元素存在

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<label for=""> choose a browser from this list:</label>
<input type="text" name="myBrowser" list="browsers">
<datalist id="browsers">
<option value="Chrome">
<option value="Firefox">
<option value="Internet Explorer">
<option value="Opera">
<option value="Safari">
<option value="Microsoft Edge">
</datalist>
</body>
</html>

  新增表单属性

    1、type

      在H5中,对input的type进行了扩展,可以有更多的取值

        1、date 日期控件(年,月,日,不包含时间)

        2、datetime-local 日期时间控件

        3、time 时间控件

        4、month 日期插件(年,月)

        5、week 日期插件(年,周)

        注意:以上只能被chrome,opera支持

        6、number 数字控件(只能输入数字)

        7、range 范围控件(通过控制条可以调整取值)

        8、search 搜索控件,

        9、tel 电话控件

        10、url 地址控件

        11、color 颜色控件

        12、email email控件

前端开发HTML5——表单标签的更多相关文章

  1. [Web 前端] 003 html 表单标签

    目录 表单标签 1. form 标签 2. 表单控件 2.1 登录框 2.2 单选按钮 2.3 多选按钮 3. select 标签 4 文件上传 5. textarea 标签 6. 按钮 7. 隐藏域 ...

  2. 前端 HTML form表单标签 textarea标签 多行文本

    <textarea></textarea>作用:允许用户录入多行数据到表单控件中 <!DOCTYPE html> <html lang="en&qu ...

  3. 前端 HTML form表单标签 input标签 type属性 file 上传文件

     加上上传文件功能 input type='file' - 依赖form表单里一个属性 enctype="multipart/form-data" 加上这个属性表示把你上次文件一点 ...

  4. 前端 HTML form表单标签 select标签 option 下拉框

    <select></select> select里面通常跟option配合使用 <!DOCTYPE html> <html lang="en&quo ...

  5. 前端 HTML form表单标签 input标签 type属性 重置按钮 reset

    input type="reset" value="重置" reset重置 还原到默认状态 <!DOCTYPE html> <html lan ...

  6. 前端 HTML form表单标签 input标签 type属性 radio 单选框

    <input type="radio"> 单选框 适用于 选择性别按钮网页等 <!DOCTYPE html> <html lang="en& ...

  7. 前端 HTML form表单标签 input标签 type属性 checkbox 多选框

    多选框 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8 ...

  8. css 表单标签两端对齐

    来自:http://demo.doyoe.com/css3/justify/justify-form.htm  侵删 <!DOCTYPE html> <html lang=" ...

  9. HTML的表格标签,列表标签,表单标签,HTML5有哪些新特性

    欢迎大家去博客冰山一树Sankey,浏览效果更好.直接右上角搜索该标题即可 博客园主页:博客园主页-冰山一树Sankey CSDN主页:CSDN主页-冰山一树Sankey 前端学习:学习地址:黑马程序 ...

随机推荐

  1. UIImageView三种方式 和 位置分布

    typedef NS_ENUM(NSInteger, UIViewContentMode) { UIViewContentModeScaleToFill, //为将图片按照整个区域进行拉伸(会破坏图片 ...

  2. Linux下 vim代码编译器的使用

    首先在命令行模式下输入代码: vim ok.c 创建c文件 如果发现vim没有被安装的话,输入以下代码对vim进行安装: sudo apt install vim 安装完毕之后再输入第一行代码,之后进 ...

  3. Scala字符穿插值器

    从2.10.0版本开始,Scala提供了三种创新的字符串插值方法: s.f 和 raw 于2.11.0版本开始,用于模式匹配patter match中 小结: s: s"Hello, $na ...

  4. 码云 git 常用命令

    git 常用命令: git init 创建一个本地文件 ①git add . 当前文件夹下的所有内容 添加到暂存区 git add test.txt 指定文件夹添加 可以添压缩文件 ②git comm ...

  5. tmux:终端复用神器

    一.简介与安装 今天无意间从同事那里知道有 tmux 这种神器,tmux(terminal multiplexer)是Linux上的终端复用神器,可从一个屏幕上管理多个终端(准确说是伪终端).使用该工 ...

  6. CUDA -- 内存分配

    CUDA可以认为是一个由软件和硬件构成的并行计算系统,其依赖于GPU的并行计算单元,CUDA有类C的API,方便程序编写.其依赖于CPU和GPU的异构体系,通过在CPU上串行执行环境初始化.内存分配. ...

  7. react相关小技巧

    一.我们在项目中切换路由的时候可能会遇到 Warning: setState(...): Can only update a mounted or mounting component. This u ...

  8. jqs实现图片轮播--通过点击按钮来实现

    <!-- 布局思路:一个大的div,中有一个ul.和一个箭头的div css样似描述: 整个盒子距离顶部100px,又水平居中 盒子的宽高为图片的实际宽高 由于每次都是看见了一张图片:有两种方式 ...

  9. 24.Java基础_IDEA类快捷键_Alt+insert

    这个IDEA我真的爱了,Alt+insert可以定制生成类的各项基本方法 Alt+insert,会打开下面这个界面,选择需要的类方法,按回车 选择该方法下的参数设置,可以使用Ctrl+A全部选中 自动 ...

  10. 在安装完jdk以后,发现javac不能执行

    安装和配置环境变量都按着流程在,但在最后的检验时,发现Java   Java -version 都能运行,唯独Javac 报“不能识别命令”错误信息,下面列出我遇到一个尴尬问题 在path变量里