一、什么是表单?

收集用户信息的一个容器,相当于点餐时的菜单...

表单中包含表单域(文本框、密码框、按钮 都属于表单域)

定义表单的语法:

<form>

表单域

</form>

常用的属性

1.action

用来处理请求的页面或程序(通常是JSP页面或Servlet 相当于厨师)

点击提交按钮以后,请求提交到handleForm.html页面来处理

<form action = "handleForm.html">

</form>

2.method

默认是get提交

<form action = "handleForm.html" method="post">

</form>

提交方式

常见的提交方式有两种

(1)get请求

(2)post请求

get和post的区别:

区别1:get请求的参数会暴露在浏览器的地址栏中,不安全,post请求的参数不会显示在地址栏中,相对安全。

例:地址栏中显示 www.handleForm.html?username=aaa&password=123

get 纸质菜单

post 点餐机

区别2:get请求的参数长度有限制(通常和浏览器相关)

post请求的参数理论上长度无限制

二、表单域

需求:实现用户登录页面

1)文本框

<input type ="text" name="username" value="username" />

type 表示表单域的类型,默认值是text表示文本框

name 给表单域起一个名字,取对应的表单域中的内容

value 真正传递到服务器的值

属性maxlength="6"表示最多输入6个字符,中英文都是6个

属性size=“30”可以改变文本框的大小,但是尽量不要这样写,通过javascript控制文本框的大小

2)密码框

<input type="password" name="password" value="pasword"/>

3)按钮

①提交按钮,submit,点击提交按钮,会提交请求

<input type="submit" value="登录"/>

②重置按钮,reset,点击重置按钮,会把表单域中的值恢复到默认状态

<input type="reset" value="重置"/>

③图片按钮,image,功能类似于提交按钮,点击图片按钮以后 也会提交表单

<input type="image" src="data:images/ceo.jpg"/>

④普通按钮,不能提交表单,可以绑定事件

<input type="button" value="普通按钮" οnclick="alert('你好')"/>

不推荐直接在按钮代码上,直接绑定事件,不符合W3C规范

W3C规范:内容、表现、行为三者分离

内容、表现、行为三者分离,如果三者没有分离,代码糅杂在一起,比较乱,不好维护

为了体现代码的可维护

(1)内容

html标签和文字

(2)表现

CSS样式

(3)行为

JavaScript代码控制的

4)隐藏域

隐藏域 name是服务器端用来取值的标识名,value表示传递的内容

<input type="hidden" name="safeCode" value="12345"/>

例:银行卡提交时的安全码,不该让客户看到

5)单选框 radio

<form action="a.jsp" method ="post">
<!--选项写在同一组下,否则没有单选,变成了两个单选框-->
性别:男<input type="radio" name="sex"  value="male" />
女<input type="radio" name="sex" value="female"checked="checked"/>
</form>

checked="checked"表示默认选中,如果有多个选项被赋值该属性,那么同组中只有最后一个被默认选中。

6)复选框 checkbox

<form action="a.jsp" method ="post">
<!--可以选多个默认选中-->
爱好:足球<input type="checkbox" name="hobby" value="football" checked="checked"/>
篮球<input type="checkbox" name="hobby" value="basketball"/>
羽毛球<input type="checkbox" name="hobby" value="badminton" checked="checked"/>
</form>

可以选择多个值默认选中

7)下拉列表框 <select><option></option></select>

<form action="a.jsp" method ="post">
<!--mutiple:如果想让下拉列表框可以通过ctrl+左键多选,可以设置multiple属性的属性值为multiple来实现。设置了该属性的下拉列表框,可以设置其多个option选项为默认被选中的。-->
现居住城市:
<select name="city" size="2" multiple="mutiple">
<option value="beijing">北京</option>
<option value="tianjin" selected="selected">天津</option>
<option value="shanghai" selected="selected">上海</option>
<option value="guangzhou">广州</option>
<option value="other">其它</option>
</select>
</form>

size="2"表示一次性显示两个

style="vertical-align:top;"可以改变字体位置、对齐方式。

style="属性1:值1;属性2,值2.。。。"

8)多行文本域 textarea

col=""控制列数,row=""控制行数,readonly="readonly"设置为只读,不可编辑

①<form action="a.jsp" method ="post">
文本域:<textarea name="content" id="2" cols="30" rows="10" style="vertical-align:top" readonly="readonly">

</textarea>
</form>

②<form action="handlerForm.jsp" method="post">
<h2>用户协议</h2>
<textarea name="content" rows="8" cols="60" readonly="readonly">
欢迎阅读XX电子商城用户协议,请仔细阅读如下内容:
...
</textarea><br/><br/>
同意以上协议<input type="checkbox" name="agree"/>
<!-- 设置按钮的disabled属性为disabled可以使按钮不可用-->
<input type="submit" value="注册" disabled="disabled"/>
</form>

9)文件域 file

<form action="a.jsp" method ="post">
请选择上传的照片:<input type="file" name="photo"/>
</form>

附:演示用户注册

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
  <html>
  <head>
  <title>演示用户注册</title>
   
   
  <meta http-equiv="content-type" content="text/html; charset=UTF-8">
   
   
   
  </head>
   
  <body>
   
   
  <fieldset style="width:700px;">
  <legend>用户注册</legend>
  <form action="#" method="post">
  <label for="username">用户名</label><input type="text" name="username" id="username"/><br/>
  密码<input type="password" name="password1"/><br/>
  确认密码<input type="password" name="password2"/><br/>
  性别:
  男<input type="radio" name="sex" value="male" checked="checked"/>
  女<input type="radio" name="sex" value="female"/><br/>
  婚姻状态:
  未婚<input type="radio" name="marryState" value="single" checked="checked"/>
  已婚<input type="radio" name="marryState" value="married"/>
  离异<input type="radio" name="marryState" value="divorce"/><br/>
  请选择您的爱好:
  足球:<input type="checkbox" name="hobby" value="football" checked="checked"/>
  篮球:<input type="checkbox" name="hobby" value="basketball" checked="checked"/>
  羽毛球:<input type="checkbox" name="hobby" value="badminton"/><br/>
  请选择您所在城市
  <select name="city" multiple="multiple" size="3" style="vertical-align:top;">
  <option value="beijing">北京</option>
  <option value="shanghai">上海</option>
  <option value="guangzhou">广州</option>
  <option value="shenzhen">深圳</option>
  <option value="jinan">济南</option>
  </select><br/>
  用户协议<textarea rows="8" cols="80" style="vertical-align:top;" readonly="readonly">
  XXXX电子商城用户协议,请仔细阅读....
  </textarea><br/>
  同意该协议
  <input type="checkbox" name="agree"/><br/>
  请选择需要上传的照片<input type="file" name="photo"/>
  <input type="button" value="注册" disabled="disabled"/>
   
  <!-- 九.隐藏域 -->
  <input type="hidden" name="safeCode" value="12345"/>
  </form>
  </fieldset>
   
  </body>
  </html>
 

表单域组标签:

<form action="" method="post">
<!-- 表单域组-->
<fieldset>
<legend>用户注册</legend>

<label for="username">用户名</label><input type="text" id="username" name="username" /><br/>
</fieldset>
</form>

HTML表单 和 表单域相关推荐

  1. 前端:HTML/06/表单,表单元素(单行文本域,单行密码域,单选按钮,复选框,下拉列表,文本区域,上传文件域,各种按钮,隐藏域,lt;caption表格标题)

    表单<form>(块元素) 表单的概念:表单主要用来获取用户数据(信息),如:注册表单, 查询表单,登录表单. 表单的工作原理: 浏览有表单的网页,填写一些必要的信息,然后点击某个按钮进行 ...

  2. ajax提交表单跨域啊,form表单提交没有跨域问题,但ajax提交存在跨域问题

    浏览器的策略本质是:一个域名下面的JS,没有经过允许是不能读取另外一个域名的内容,但是浏览器不阻止你向另外一个域名发送请求. 所以form表单提交没有跨域问题,提交form表单到另外一个域名,原来页面 ...

  3. autojs遍历当前页面所有控件_HTML5表单和表单控件的使用

    哈喽大家好,我是作者"未来",本期分享的内容是Web前端系列课程,本系列总共29个阶段,坚持学习3个月蜕变为Web前端高手哦! 志同道合的小伙伴跟我一起学习交流哦! 第一阶段 HT ...

  4. access表怎么生成表结构_数据结构——单链表讲解

    单链表 单链表的创建分为头插入法和尾插入法两种,两者并无本质上的不同,都是利用指针指向下一个结点元素的方式进行逐个创建,只不过使用头插入法最终得到的结果是逆序的. 1.单链表概念&设计 单链表 ...

  5. 物理机存放mysql实例原则_MySQL优化笔记(四)--表的设计与优化(单表、多表)...

    前面讲了SQL优化以及索引的使用.设计优化了,那么接下来就到表的设计与优化啦!!!真实地去设计优化单表结构以及讲述多表设计基本原则(结合真实的生产环境的取舍来讲述). 文章结构:(1)单表设计与优化: ...

  6. html表单自动提交表单提交表单数据类型,表单

    表单在网页中主要负责数据采集功能.一个表单有三个基本组成部分: 表单标签:这里面包含了处理表单数据所用CGI程序的URL以及数据提交到服务器的方法. 表单域:包含了文本框.密码框.隐藏域.多行文本框. ...

  7. 分步表单_表单设计-掌握表单设计方法(表单体验篇)

    全篇阅读大概需要15min,对表单设计不熟悉的同学看完后肯定会有不少的收获~~~ 说到表单其实在生活中可以接触到各种各样的表单,比如:驾照申请表.体检表.银行开户需要填写的表等等,这些都是表单,主要目 ...

  8. 第三章 表单与表单元素

    学习目标 理解表单的作用 理解表单与表单元素的关系 掌握表单标签及其属性 掌握各种表单元素标签及其属性 在Web网页中,浏览者经常需要与Web服务器进行数据交互.当浏览者需要填写数据并将这些数据发送到 ...

  9. 数据结构——线性表:顺序表、单链表、双链表(C++)

    内容概要: 1.代码部分: 线性表抽象类 顺序表类 单链表类 双链表类 主函数 2.基本概念及注意事项 代码(测试环境VS2017): //线性表ADT类的定义:ADT_List.htemplate ...

最新文章

  1. 关于java的一个典型的动态代理
  2. Linux -- ***检测系统(IDS)介绍及应用(1)
  3. PHP伪静态与防注入
  4. Scala集合常用方法:reduceLeft/reduceRight
  5. Go基础编程:格式化输出、类型转换、类型别名
  6. centos开发环境安装的备忘
  7. 微型计算机控制技术试卷B,微型计算机控制技术试卷b..doc
  8. 对当今社会的某些现象的感想
  9. 迷宫城堡(HDU-1269)
  10. 继承演练 动物 狗 哮天犬 c# 1613703354
  11. 蓝桥杯2014c++真题:扑克序列(next_permutation)
  12. 蓝桥杯2017年第八届C/C++省赛B组第三题-承压计算
  13. Yann LeCun、Yoshua Bengio和Geoffrey Hinton的联合综述《Deep Learning》翻译
  14. Power BI DAX: FILTER函数使用多个条件筛选数据
  15. Just Cause系列游戏品鉴
  16. g2o学习记录(4)cmake-gui再次编译g2o及不太完美的处理cs.h错误[20190323已找到完美解决方案](非干货纯记录,可不看)
  17. HTTP状态码(2xx,3xx,4xx,5xx)
  18. SQL高级——PLSQL数据库编程
  19. QT中引用动态库(.so) 和 静态库 (.a)
  20. 群控代理、2016年很火的云豹群控代理

热门文章

  1. Visual Studio安装,更新,报错,密钥
  2. vSAN 6.6十大特性的文档和视频
  3. python strftime函数_Python 常用函数time.strftime()简介
  4. 自动售货机驱动板与android,一种自动售货机的逻辑驱动板的制作方法
  5. tesla p100 linux,NVIDIA Tesla P100计算卡性能首测:震撼地球!
  6. worm/spybot_安全计算:使用Spybot搜索和销毁创建计划的扫描
  7. apple watch series 8和se区别 苹果手表8和se区别选哪个
  8. Merci上线Bit-M平台Accelerator
  9. HashCode介绍
  10. Vue和Elementui的关系