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

如题所述

区别:

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个回答  推荐于2019-08-05

有以下区别:

1、post的安全性比get要好。

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一般则不能。

扩展资料:

<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。    

本回答被网友采纳
第2个回答  推荐于2017-04-22
这里有详细用法
http://blog.163.com/llf_046/blog/static/527371192009224022140/

1. get是从服务器上获取数据,post是向服务器传送数据。
2. get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到。post是通过HTTP post机制,将表单内各个字段与其内容放置在HTML HEADER内一起传送到ACTION属性所指的URL地址。用户看不到这个过程。
3. 对于get方式,服务器端用Request.QueryString获取变量的值,对于post方式,服务器端用Request.Form获取提交的数据。
4. get传送的数据量较小,不能大于2KB。post传送的数据量较大,一般被默认为不受限制。但理论上,IIS4中最大量为80KB,IIS5中为100KB。
5. get安全性非常低,post安全性较高。但是执行效率却比Post方法好。

建议:
1、get方式的安全性较Post方式要差些,包含机密信息的话,建议用Post数据提交方式;
2、在做数据查询时,建议用Get方式;而在做数据添加、修改或删除时,建议用Post方式;本回答被提问者采纳
第3个回答  2009-08-20
表单数据提交的方式不同,如果是get的话,表单里的数据就会在地址栏方式传送,而接收页接收的方式也不一样,

get:request.querstring(“id”)
post:request.form(“id”)