# <form> 元素
`<form>`元素代表了表单,继承了 HTMLFormElement 接口。
## HTMLFormElement 的实例属性
- `elements`:返回一个类似数组的对象,成员是属于该表单的所有控件元素。该属性只读。
- `length`:返回一个整数,表示属于该表单的控件数量。该属性只读。
- `name`:字符串,表示该表单的名称。
- `method`:字符串,表示提交给服务器时所使用的 HTTP 方法。
- `target`:字符串,表示表单提交后,服务器返回的数据的展示位置。
- `action`:字符串,表示表单提交数据的 URL。
- `enctype`(或`encoding`):字符串,表示表单提交数据的编码方法,可能的值有`application/x-www-form-urlencoded`、`multipart/form-data`和`text/plain`。
- `acceptCharset`:字符串,表示服务器所能接受的字符编码,多个编码格式之间使用逗号或空格分隔。
- `autocomplete`:字符串`on`或`off`,表示浏览器是否要对`<input>`控件提供自动补全。
- `noValidate`:布尔值,表示是否关闭表单的自动校验。
## HTMLFormElement 的实例方法
- `submit()`:提交表单,但是不会触发`submit`事件和表单的自动校验。
- `reset()`:重置表单控件的值为默认值。
- `checkValidity()`:如果控件能够通过自动校验,返回`true`,否则返回`false`,同时触发`invalid`事件。
下面是一个创建表单并提交的例子。
```javascript
var f = document.createElement('form');
document.body.appendChild(f);
f.action = '/cgi-bin/some.cgi';
f.method = 'POST';
f.submit();
```
- 前言
- 入门篇
- 导论
- 历史
- 基本语法
- 数据类型
- 概述
- null,undefined 和布尔值
- 数值
- 字符串
- 对象
- 函数
- 数组
- 运算符
- 算术运算符
- 比较运算符
- 布尔运算符
- 二进制位运算符
- 其他运算符,运算顺序
- 语法专题
- 数据类型的转换
- 错误处理机制
- 编程风格
- console 对象与控制台
- 标准库
- Object 对象
- 属性描述对象
- Array 对象
- 包装对象
- Boolean 对象
- Number 对象
- String 对象
- Math 对象
- Date 对象
- RegExp 对象
- JSON 对象
- 面向对象编程
- 实例对象与 new 命令
- this 关键字
- 对象的继承
- Object 对象的相关方法
- 严格模式
- 异步操作
- 概述
- 定时器
- Promise 对象
- DOM
- 概述
- Node 接口
- NodeList 接口,HTMLCollection 接口
- ParentNode 接口,ChildNode 接口
- Document 节点
- Element 节点
- 属性的操作
- Text 节点和 DocumentFragment 节点
- CSS 操作
- Mutation Observer API
- 事件
- EventTarget 接口
- 事件模型
- Event 对象
- 鼠标事件
- 键盘事件
- 进度事件
- 表单事件
- 触摸事件
- 拖拉事件
- 其他常见事件
- GlobalEventHandlers 接口
- 浏览器模型
- 浏览器模型概述
- window 对象
- Navigator 对象,Screen 对象
- Cookie
- XMLHttpRequest 对象
- 同源限制
- CORS 通信
- Storage 接口
- History 对象
- Location 对象,URL 对象,URLSearchParams 对象
- ArrayBuffer 对象,Blob 对象
- File 对象,FileList 对象,FileReader 对象
- 表单,FormData 对象
- IndexedDB API
- Web Worker
- 附录:网页元素接口
- a
- img
- form
- input
- button
- option
- video,audio