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" 表示表单将以多部分形式编码,适用于包含文件上传或二进制数据的情况。

相关推荐
王码码203531 分钟前
Flutter for OpenHarmony:Flutter 三方库 algoliasearch 毫秒级云端搜索体验(云原生搜索引擎)
android·前端·git·flutter·搜索引擎·云原生·harmonyos
发现一只大呆瓜36 分钟前
深入浅出 AST:解密 Vite、Babel编译的底层“黑盒”
前端·面试·vite
天天鸭1 小时前
前端仔写了个 AI Agent,才发现大模型只干了 10% 的活
前端·python·ai编程
发现一只大呆瓜1 小时前
前端模块化:CommonJS、AMD、ES Module三大规范全解析
前端·面试·vite
IT_陈寒1 小时前
一文搞懂JavaScript的核心概念
前端·人工智能·后端
IT_陈寒1 小时前
Java开发者必看!5个提升开发效率的隐藏技巧,你用过几个?
前端·人工智能·后端
前端Hardy1 小时前
Wails v3 正式发布:用 Go 写桌面应用,体积仅 12MB,性能飙升 40%!
前端·javascript·go
Laurence2 小时前
Qt 前后端通信(QWebChannel Js / C++ 互操作):原理、示例、步骤解说
前端·javascript·c++·后端·交互·qwebchannel·互操作
Pu_Nine_92 小时前
JavaScript 字符串与数组核心方法详解
前端·javascript·ecmascript
码云数智-园园2 小时前
从输入 URL 到页面展示:一场精密的互联网交响乐
前端