# <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