form表单有什么作用?有哪些常用的input 标签,分别有什么作用?
- 表单的作用是搜集用户的输入,用户提交表单时向服务器传输数据,从而实现用户与web服务器的交互。
- input 标签
<input type="text">:定义用于文本输入的单行输入字段(默认宽度为20个字符)
<input type="password">:定义密码字段
<input type="radio">:定义单选按钮,允许用户在有限数量的选项中选择一个
<input type="checkbox">:定义复选框
<input type="submit">:定义用于向表单处理程序提交表单的按钮。
<input type="button">:定义按钮
<input type="number">:用于应该包含数字值的输入字段
<input type="date">:用于应该包含日期的输入字段
<input type="color">:用于应该包含颜色的输入字段,根据浏览器支持,颜色选择器会出现输入字段中。
<input type="range">:用于应该包含一定范围内的值的输入字段,根据浏览器支持,输入字段能够显示为滑动控件
<input type="month">:允许用户选择月份和年份,根据浏览器的支持,日期选择器会出现在输入字段中
<input type="week">:允许用户选择周和年,根据浏览器支持,日期选择器会出现输入字段中。
<input type="time">:允许用户选择时间(无时区),根据浏览器支持,时间选择器会出现输入字段中。
<input type="datetime">:允许用户选择日期和时间(有时区),根据浏览器支持,日期选择器会出现输入字段中。
<input type="datetime-local">:允许用户选择日期和时间(无时区),根据浏览器支持,日期选择器会出现输入字段中。
<input type="email">:用于应该包含电子邮件地址的输入字段,根据浏览器支持,能够在被提交时自动对电子邮件地址进行验证。
<input type="search">:用于搜索字段(搜索字段的表现类似常规文本字段)。
<input type="tel">:用于应该包含电话号码的输入字段,目前只有Safari 8支持该类型
<input type="url">:用于应该包含URL地址的输入字段,根据浏览器的支持,在提交时能够自动验证url字段。
post 和 get 方式的区别?
- get适用于非敏感数据的提交,post适用于敏感数据的提交
- 当使用get方法时,表单数据在页面地址栏中是可见的;当使用post方法时,表单数据在页面地址栏中是不可见的。
- get适用于数据的查询和获取,post适用于数据的增加删除和修改
- get方法提交的数据最多只能是1024字节,理论上POST没有限制,可传较大量的数据,IIS4中最大为80KB,IIS5中为100KB
参考
在input里,name 有什么作用?
- 一个页面你的表单可能不止一个,为了区分这些表单,我们使用name属性来给表单进行命名。这样也是为了防止表单提交之后到后台程序出现混乱。
语法:<form name="表单名称">
radio(单选) 如何分组?
- 为属于同一组(类别)的选项设置相同的name值
<input type="radio" name="city" value="beijing">北京
<input type="radio" name="city" value="shanghai">上海
<input type="radio" name="city" value="hangzhou">杭州
<input type="radio" name="gender" value="male">男
<input type="radio" name="gender" value="female">女
placeholder属性有什么作用
- placeholder 属性提供可描述输入字段预期值的提示信息(hint)。
该提示会在输入字段为空时显示,并会在字段获得焦点时消失。 - placeholder 属性适用于以下的 <input> 类型:text, search, url, telephone, email 以及 password。
type=hidden隐藏域有什么作用?举例说明
- 标签<input type="hidden" name="" value="">标签的作用是:隐藏不想让用户看到的信息,但是这些信息对于Web应用又是非常必要的。
- 暂存信息:后端在构造web页面的过程中,通过hidden隐藏域在页面中添加了相关数据信息(用户对网页进行操作时可能会用到这些数据信息)
- 信息安全:后端在构造web页面的过程中,可以通过hidden隐藏域在页面中添加相关的验证信息,当form表单被提交后,服务器会收到该验证信息,通过一定的算法校验该验证信息,可以有效防止非法请求对数据库的增删改查,提高了web应用的安全性。
- 有些时候我们要给用户一信息,让他在提交表单时提交上来以确定用户身份,如sessionkey,等等.当然这些东西也能用cookie实现,但使用隐藏域就简单的多了.而且不会有浏览器不支持,用户禁用cookie的烦恼。
- 参考
From提交的详细介绍
理解RESTful架构
CSRF 详解与攻防实战
form标签之get,post区别
博客就是这篇文章
<form action="/getInfo" method="get">
<div class="submit">
<button>提交😁</button>//按钮
</div>
<div class="username">
<label for="username">姓名</label>
<input id="username" type="text" name="username" value="ruo">//普通文本框
</div>
<div class="password">
<label for="password">密码</label>
<input id="password" type="password" name="password" placeholder="输入密码">
//密码框,type=password
</div>
<div class="hobby">
<label>爱好</label>
<input type="checkbox" name="hobby" value="read"> 读书
<input type="checkbox" name="hobby" value="music"> 听歌
<input type="checkbox" name="hobby" value="study"> 学习
//多选框,type=checkbox,同一组使用相同的name,
</div>
<div class="sex">
<label>性别</label>
<input type="radio" name="sex" value="男"> 男
<input type="radio" name="sex" value="女"> 女
//单选框,type=radio,同一组使用相同的name
</div>
<div class="file">
<input type="file" name="myfile" accept="image/png">
</div>
<div class="select">
<select name="city">
<option value="beijing">北京</option>
<option value="shanghai" selected>上海</option>
<option value="hangzhou">杭州</option>
</select>
//下拉菜单栏,select标签
</div>
<div class="textarea" cols="200" rows="100">
<textarea name="article">
多行文本,注意和 type=text的区别
</textarea>
//多行文本框,cols:宽,rows:高
<input type="hidden" name="csrf" value="12345623fafdffdd">
<input type="button" value="Buttom" /> 不会提交
<input type="submit" value="Submit" /> 会提交
<input type="reset" value="Reset" /> 重置输入
//按钮,
</div>
</form>
9/5/2017