HTML 表单元素

表单由一个 form 元素作为容器构成,是用户与网页之间信息交互的基础( 目的:与用户进行交互,收集用户资料 )。
也就是说,需要用户填写的内容放在表单容器中,当用户点击“提交”按钮时,表单会将数据统一发送给服务器。

[ JS 表单 ] 表单应用主要分为以下几个步骤: 构建表单、配置表单、验证表单、服务器处理



[ 构建表单 ] 在 HTML 中,一个完整的表单通常由表单域、表单控件和提示信息 3 个部分构成。

  • 表单域:相当于一个容器,用来容纳所有的表单控件和提示信息,可以通过定义它处理表单数据所用程序的 URL 地址及数据提交到服务器的方法。如果不定义表单域,表单中的数据就无法传送到后台服务器。
  • 表单控件:包含了具体的表单功能项,不同的表单控件有不同的用途,如文本框、单选框、复选框、按钮等。
  • 提示信息:一个表单中通常还需要包含一些说明性的文字,提示用户进行填写和操作。

表单域 form

[ form元素 ]  表单域,表单关联控件的集合;禁止表单嵌套。

即,在页面中创建一个表单,以实现用户信息的收集和传递,form 中的所有内容都会被提交给服务器。


[  form 元素属性?↓ ]  name、accept-charset、action、target、enctype、method、autocomplete、novalidate

其中 action 和 name 属性为必需项。

  • name,用于指定表单的名称,以区分同一个页面中的多个表单。     // 每个表单都应该有自己的表单域

  • action                                      // 在表单收集到信息后,需要将信息传递给服务器进行处理

该属性用于指定接收并处理表单数据的服务器程序的 URL 地址。

  • method,告诉浏览器如何将数据发送给服务器,指定向服务器发送数据的方法(取值为:post | get)


[ fieldset  分组表单控件 + legend ]

fieldset 元素,用于将表单内的相关元素分组、打包,提升可访问性,多数浏览器用一个简单的边框来显示 fieldset。

legend 元素用于定义 fieldset 元素的标题。


表单控件 — input 及其他

[ 输入控件 input ]  数据输入字段,通过 { 其属性?↓ } —  type?! 控制字段类型,用以接受各种类型的用户输入。

<input /> 标签为单标签,type 为其最基本的属性,其取值有很多种,用于指定不同的控件类型。除了 type 属性之外,input 标签还可以定义很多其他的属性,其中常用的属性有:


其他表单控件?↓ ]  input 元素无疑是一个庞大和复杂的元素,但它并不是唯一的表单控件。


兼容性:https://caniuse.com