You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
<body><formaction=""enctype="application/x-www-form-urlencoded">
First name: <inputtype="text"name="fname">
Last name: <inputtype="text"name="lname"><inputtype="submit"value="提交"></form></body>
Activity
chenfaxiang commentedon May 9, 2019
form 标签的 enctype 属性指定将数据回发到服务器时浏览器如果对表单数据进行编码,其有三种编码形式:
application/x-www-form-urlencoded编码类型会将表单中发送到服务器之前都会进行编码(空格转换为 "+" 加号,特殊符号转换为 ASCII HEX 值),数据编码成键值对的形式,当表单的action为post时,它会把form数据封装到 http body 中,然后发送到服务器;当表单的action位get时,它会把表单中发送的数据转换成一个字符串(如:a=1&b=2&c=3)并使用?连接到 url 后面。在不指定 enctype 属性时 application/x-www-form-urlencoded 是默认属性。
它不对字符进行编码,在使用包含文件(如图片、mp4等文件)上传控件的表单时必须使用该值
数据以纯文本格式进行编码,空格转换为 "+" 加号,但不对特殊字符编码
kokokele commentedon Jul 15, 2019
https://blog.csdn.net/bigtree_3721/article/details/82809459
这个比较全面。
少了 json
Konata9 commentedon Aug 7, 2019
<form>
标签的enctype
属性,用来控制表单上传的数据的编码格式。其值和 HTTP 请求的Content-type
值一样。在数据提交到服务器之前,会以enctype
的值进行编码。enctype
对应的值如下参考文章:
HTML
<form>
enctype 属性seho-dev commentedon Aug 9, 2019
代表了form表单提交的数据发送到服务器如何进行编码,
默认是会对所有字符进行编码,空格转换+,特殊字符转换ASCLL
muitipart/form-data 不对字符进行编码,传递文件时该值是必需的
text/plain 对空格进行编码,剩余不编码
blueRoach commentedon Jun 15, 2020
规定了form表单提交时发送到服务器的数据如何变编码
CoderLeiShuo commentedon Jul 31, 2020
借助前辈们的力量,再整理一下:
enctype
属性规定在将表单数据发送到服务器之前如何对其进行编码注意:只有
method = "post"
时才使用enctype
属性。语法
属性值
上面的话太笼统?那看下面的解释吧:
当你指定了
method = "post"
时,就会用到enctype
属性,这个属性可以设置三 种类型的值。如果你没有设置enctyp
的值,那么它将会使用默认值application/x-www-form-urlencoded
application/x-www-form-urlencoded
编码类型:在不指定
enctype
属性时application/x-www-form-urlencoded
是默认属性。会将表单中发送到服务器之前都会进行编码(空格转换为
"+"
加号,特殊符号转换为 ASCII HEX 值),数据编码成键值对的形式当表单的
action
为post
时,它会把form
数据封装到http body
中,然后发送到服务器;当表单的
action
为get
时,它会把表单中发送的数据转换成一个字符串(如:a=1&b=2&c=3
)并使用?
连接到url
后面。multipart/form-data
:它不对字符进行编码,在使用包含文件(如图片、mp4等文件)上传控件的表单时必须使用该值text/plain
:数据以纯文本格式进行编码,空格转换为'+'
号,但不对特殊字符编码示例
HTML代码如下:
这段代码有以下几点需要注意:
form
的提交行为需要通过type=submit
实现form
中的method
属性不指定时,默认的提交方式为get
请求,那么也就是说如果不指定method
为post
,那么是不会使用enctype
属性的。form
表单的enctype
属性是application/x-www-form-urlencoded
网页页面如下:
例如:在上图中的表单填写相应的信息后,进行提交。可以注意到:
+
号action
为ge
时,表单中发送的数据被通过?
连接,连接到原url
后面smile-2008 commentedon Sep 23, 2020
form 标签的 enctype 属性指定将数据回发到服务器时浏览器如果对表单数据进行编码,其有三种编码形式:
application/x-www-form-urlencoded(也是默认格式)
application/x-www-form-urlencoded编码类型会将表单中发送到服务器之前都会进行编码(空格转换为 "+" 加号,特殊符号转换为 ASCII HEX 值),数据编码成键值对的形式,当表单的action为post时,它会把form数据封装到 http body 中,然后发送到服务器;当表单的action位get时,它会把表单中发送的数据转换成一个字符串(如:a=1&b=2&c=3)并使用?连接到 url 后面。在不指定 enctype 属性时 application/x-www-form-urlencoded 是默认属性。
multipart/form-data
它不对字符进行编码,在使用包含文件(如图片、mp4等文件)上传控件的表单时必须使用该值
text/plain
数据以纯文本格式进行编码,空格转换为 "+" 加号,但不对特殊字符编码
amikly commentedon Nov 10, 2021
HTMLFormElement.enctype
属性常用来指明提交表单的内容类型,可选的值如下:application/x-www-form-urlencoded
: 初始的默认值multipart/form-data
: 适用于使用input标签上传文件text/plain
: HTML5 引入的类型这些值可以通过元素 button和input 的属性form.enctype来改写
设置表单的MIME编码,就是设置enctype的值。默认值为"application/x-www-form-urlencoded",默认值不支持文件上传
如果要上传文件的话,是一定要将encotype设置为multipart/form-data
Iambecauseyouare commentedon Mar 8, 2023
form 标签的 enctype 属性指定将数据回发到服务器时浏览器如果对表单数据进行编码,其有三种编码形式: