html中<form>的method=post和method=get有什么区别

html-css018

html中<form>的method=post和method=get有什么区别,第1张

区别:

1、在对安全性有要求的情况下,应该使用post。

2、get只能向服务器发送ASCII字符,而post则可以发送整个ISO10646中的字符(如果同时指定enctype="multipart/form-data"的话)。

3、get和post对应的enctype属性有区别。enctype有两个值,默认值为application/x-www-form-urlencoded,而另一个值multipart/form-data只能用于post。

4、IE将请求的URL长度限制为2083个字符,从而限制了get提交的数据长度。测试表明如果URL超出这个限制,提交form时IE不会有任何响应。其它浏览器则没有URL的长度限制,因此其它浏览器能通过get提交的数据长度仅受限于服务器的设置。对于post,因为提交的数据不在url中,所以通常可以简单地认为数据长度限制仅受限于服务器的设置。

5、由于一个get得到的结果直接对应到一个URI,所以get的结果页面有可能被浏览器缓存。而post一般则不能。

两种提交的方法分别为get和post。

1、get:提交的数据量要小于1024字节,表单提交时表单域数值(表单请求的信息:账号、密码…)将在地址栏显示。

2、post:传递的数据量不受限制,表单提交时表单的域值(表单请求的信息:账号、密码…)不会在地址栏显示,安全性能较高,对信息进行了隐藏,一般在开发中采用post。

扩展资料

<form>标签用于为用户输入创建 HTML 表单。

表单能够包含 input 元素,比如文本字段、复选框、单选框、提交按钮等等。

表单还可以包含 menus、textarea、fieldset、legend 和 label 元素。

表单用于向服务器传输数据。

注释:form 元素是块级元素,其前后会产生折行。

<form>标签在html5的新属性

1、accept,值:MIME_type,HTML 5 中不支持。  

2、accept-charset,值:charset_list,规定服务器可处理的表单数据字符集。  

3、action,值:URL,规定当提交表单时向何处发送表单数据。  

4、autocomplete,值on/off,规定是否启用表单的自动完成功能。 

5、enctype,规定在发送表单数据之前如何对其进行编码。  

6、method,值:get/post,规定用于发送 form-data 的 HTTP 方法。 

7、name,值:form_name,规定表单的名称。  

8、novalidate,值:novalidate,如果使用该属性,则提交表单时不进行验证。  

9、target,值:_blank/_self/_parent/_top/framename,规定在何处打开 action URL。 

enctype 属性可能的值:

1、application/x-www-form-urlencoded

2、multipart/form-data

3、text/plain

<form>标签支持 HTML 中的全局属性。

<form>标签支持 HTML 中的事件属性。

1,method是指定数据如何发送到服务器的一个属性

2,只可能是post和get

post:官方解释是把数据通过post会话传送到服务器。实际就是提交数据。

get:将表单中数据的按照variable=value的形式,添加到action所指向的URL后面,并且两者使用“?”连接,而各个变量之间使用“&”连接;一般用来从服务器得到数据。

3,默认是get,所以一般我们都要指定为post

具体参考下面网址

----

有一个DHTML文档,很好用,有HTML,CSS,颜色值等等可以查阅,要的话留下Mail地址我发给你(有4M)

楼上说的没错,我举个例子补充一点:

比如说有2个页面,a.htm和b.asp,你想将a.htm页面表单中的值传递给b.asp页面。

那么在a.htm中就会有如下的表单代码:

<form id="form1" method="get" action="b.asp">

<input name="Text1" type="text" value="11" />

<input id="Submit1" type="submit" value="submit" />

</form>

上面的代码中2个地方需要注意:

1、method的属性是get,所以通过网址传值,可见的;

2、表单中有2个对象,一个文本框,一个提交按钮。要传递的是文本框的值,注意要把文本框的id属性改成name属性,这样文本框的值才能在网址处显示出来。

当你浏览a.htm页并单击提交按钮时,页面转到b.asp页,网址变为:

http://localhost/WebSite2/b.asp?Text1=11

如果不想让值在网址处显示出来,method值换成post即可。

然后在b.asp中就可以通过服务器端代码获取传递过来的值了。

当method=get时,b.asp页面中通过<% =Request.QueryString["Text1"]%>获取值并输出;

当method=post时,b.asp页面中通过<% =Request.Form["Text1"]%>获取值并输出。