📅  最后修改于: 2023-12-03 15:31:13.343000             🧑  作者: Mango
formEnctype
属性规定了在提交表单时使用的内容类型。该属性仅适用于 form
元素。
application/x-www-form-urlencoded
:当表单数据被提交时,数据会被编码为键/值对,这是表单默认的方式。使用这种类型时,空格会被转换为加号(+),非字母数字字符会被转换为它们的 ASCII 十六进制值。
multipart/form-data
:表单数据会被编码成一条消息并使用多重 form-data
来发送。每个控件对应消息中的一个部分,每个部分都有一个唯一的边界字符串来定义它的开始和结束。
text/plain
:表单数据会被编码为纯文本格式,空格会被转换为加号(+),但不会对特殊字符进行编码。使用这种类型时,特殊字符不会被编码,而是原样发送。
<form enctype="content-type"></form>
<form action="submit.php" method="post" enctype="multipart/form-data">
<input type="text" name="name">
<input type="file" name="file">
<button type="submit">提交</button>
</form>
multipart/form-data
。text/plain
,则不能上传二进制数据(如图片等)。multipart/form-data
时,浏览器会将数据编码成二进制格式,而非纯文本,所以该方式会占用更多的带宽和资源。multipart/form-data
时,虽然可以上传多个文件,但会导致每个文件都会占用一定的系统资源,从而导致服务器的内存和 CPU 使用率增加。以上便是 formEnctype
属性的用法和注意事项。在使用表单时,根据实际需求选择不同的编码方式,可以更好地减少带宽和资源的占用,提高系统的性能。