HTML的form表单标签详解~

通过HTML提交表单数据有web中是非常常用的操作,所以有必要详细、仔细学习了解HTML的form表单。

目录

  • [01-关键词 novalidate 是什么意思?](#01-关键词 novalidate 是什么意思?)
  • [02- action="" 是什么意思?](#02- action="" 是什么意思?)
  • [03- enctype="multipart/form-data" 是什么意思?](#03- enctype="multipart/form-data" 是什么意思?)

01-关键词 novalidate 是什么意思?

示例代码:

html 复制代码
 <form novalidate method="post" class="form-horizontal">

答:在HTML中,novalidate 是一个布尔属性,通常用于 <form> 元素中。它用来指示浏览器不应该对表单中的输入进行验证,即不执行浏览器默认的表单验证行为。

当表单中的 novalidate 属性被设置时,浏览器将不会执行对表单字段的验证,包括输入是否符合类型、是否满足必填条件等。这对于那些希望自定义验证逻辑或在后端进行验证的情况非常有用。你可以通过JavaScript来处理自定义的验证逻辑,并在需要时通过表单的提交事件来触发验证。

novalidate 属性被应用在 <form> 标签上,这意味着在提交表单时,浏览器不会执行默认的表单验证,而是需要通过其他方式来处理验证逻辑。这可能是因为开发人员想要使用自己的验证逻辑,或者他们计划在后端进行验证。

02- action="" 是什么意思?

示例代码:

html 复制代码
<form novalidate action="" method="post" class="form-horizontal">

action="":这是 <form> 元素的一个属性,用于指定在表单提交时要发送数据的目标URL。空字符串 "" 表示数据将被提交到当前页面。

03- enctype="multipart/form-data" 是什么意思?

示例代码:

html 复制代码
<form novalidate action="" method="post" enctype="multipart/form-data" class="form-horizontal">

在HTML中,enctype<form> 元素的一个属性,用于指定在提交表单数据时所使用的编码类型。multipart/form-data 是其中一种编码类型,通常用于在表单中上传文件或二进制数据。

当你在表单中有文件上传字段(例如 <input type="file">)或者需要发送二进制数据时,你需要将表单的 enctype 属性设置为 multipart/form-data,以便正确处理这些数据。这种编码方式允许将二进制文件数据以及其他表单字段的数据一起编码并发送到服务器。

multipart/form-data 编码将表单数据分成多个部分,每个部分都有自己的头部信息和内容。这种编码方式适用于文件上传,因为它能够正确处理文件的二进制数据,而其他的编码方式(例如默认的 application/x-www-form-urlencoded)可能会导致文件数据损坏或丢失。

所以,enctype="multipart/form-data" 表示表单将以多部分形式编码,适用于包含文件上传或二进制数据的情况。

相关推荐
小码哥_常10 小时前
告别RecyclerView卡顿!8个优化技巧让列表丝滑如德芙
前端
小村儿10 小时前
Harness Engineering:为什么你用 AI 越用越累?
前端·后端·ai编程
fqrj202610 小时前
公司企业网站建设公司收费标准与报价明细解析
html·网站建设·网站开发
enoughisenough10 小时前
浏览器判断控制台是否开启
前端
Moment10 小时前
当前端开始做 Agent 后,我才知道 LangGraph 有多重要❗❗❗
前端·后端·面试
竹林81810 小时前
RainbowKit 快速集成多链钱包连接:从“连不上”到丝滑切换的踩坑实录
前端·javascript
小蜜蜂dry10 小时前
nestjs实战-登录、鉴权(一)
前端·后端·nestjs
农夫山泉不太甜10 小时前
WebSocket与SSE技术方案选型对比分析
前端
重阳微噪11 小时前
受够了空格翻页?我写了一个 Chrome 自动滚动插件,让你真正沉浸式阅读
前端
Awu122711 小时前
🍎用 pretext 搞定输入框动态宽度:一个困扰了我三天的 CSS 问题
前端