form表单的作用
HTML 表单用于接收不同类型的用户输入,用户提交表单时向服务器传输数据,从而实现用户与Web服务器的交互。故其作用为数据采集。
常用的input标签及作用
标签 | 功能 |
---|---|
<input type="text"> |
文本输入框,单行,默认宽度为20个字符 |
<input type="password"> |
密码输入框,输入内容自动转变成圆点 |
<input type="checkbox"> |
复选框,用name分组要一致,一定要加value值 |
<input type="radio"> |
单选框,用name分组要一致,一定要加value值 |
<input type="file"> |
上传文件,可通过accept限制文件类型 |
<input type="submit"> |
提交表单数据 |
<input type="reset"> |
重置表单内容 |
<input type="hidden"> |
定义隐藏的字符段以便服务器识别安全与否 |
post 和 get 方式的区别
- GET的安全性比POST差。因为GET的参数直接显示在URL上,不能用来传递敏感信息。而POST参数放在Request body中。
- GET传送的参数是有限制的,因为放在URL中。而POST没有限制。
- GET请求只能进行URL编码,而POST支持多种编码方式。
- GET在浏览器回退时是无害的,而POST会再次发出请求。
- GET只接受ASCII字符,但POST没有限制。
- GET发送一个TCP数据包,而POST分前后两次发两个(先header后date)。理论上来讲,GET比POST更快,更有效率。
另外,两者本质关系请参考:
HTTP 中 GET 与 POST 的区别
在input里name 的作用
name属性规定了input元素的名称,对提交到服务器后的表单数据进行标识,在Javascript中引用表单数据。
注:只有设置了name属性的表单元素才能在提交表单时传递他们的值。
radio如何分组
radio中同组选项的name值设为相同即可。
例:
<input type="radio" name="animal" value="cat">猫
<input type="radio" name="animal" value="dog">狗
placeholder 属性的作用
placeholder可在输入框中显示提示信息,一旦输入数据,提示信息便会自动消失。
type=hidden隐藏域的作用
-
隐藏域在页面中对于用户是不可见的,在表单中插入隐藏域的目的在于收集或发送信息,以利于被处理表单的程序所使用。浏览者单击发送按钮发送表单的时候,隐藏域的信息也被一起发送到服务器。
-
有些时候我们要给用户一信息,让他在提交表单时提交上来以确定用户身份,如sessionkey,等等.当然这些东西也能用cookie实现,但使用隐藏域就简单的多了.而且不会有浏览器不支持,用户禁用cookie的烦恼。
-
有些时候一个form里有多个提交按钮,怎样使程序能够分清楚到底用户是按那一个按钮提交上来的呢?我们就可以写一个隐藏域,然后在每一个按钮处加上onclick="document.form.command.value="xx""然后我们接到数据后先检查command的值就会知道用户是按的那个按钮提交上来的。
-
有时候一个网页中有多个form,我们知道多个form是不能同时提交的,但有时这些form确实相互作用,我们就可以在form中添加隐藏域来使它们联系起来。
-
javascript不支持全局变量,但有时我们必须用全局变量,我们就可以把值先存在隐藏域里,它的值就不会丢失了。
-
还有个例子,比如按一个按钮弹出四个小窗口,当点击其中的一个小窗口时其他三个自动关闭.可是IE不支持小窗口相互调用,所以只有在父窗口写个隐藏域,当小窗口看到那个隐藏域的值是close时就自己关掉。
例: 使用hidden实现点击提交按钮数字加1
<form action="数值自增.ashx" method="post">
<input type="hidden" name="_viewstate" value="a" />
<input type="hidden" name="_div" value="@n" />
<div>@n</div>
<input type="submit" value="click" />
</form>
网友评论