隐式提交
如:聚焦在输入框时按回车提交表单
满足以下任一条件
1.表单有非禁用的提交按键2.没有提交按键时,不超过一个类型为text search url email passport date time number的input元素。
此时在输入框里输入后,按回车键,也可以隐式的提交表单。
提交过程
根据表单 enctype 指定的值构建要提交的数据结构
使用method指定的方式发送数据到action指定的目标。
构建提交数据
从可提交元素中提取数据组成指定的数据结构过程
可提交元素有 button input keygen object select textarea
编码方式(enctype)
enctype 所支持的形式:
application/x-www-form-urlencoded (默认,数据格式为 & 分隔的键值对)
multipart/form-data (IFC 2388 字节流形式,例如文件上传所使用的数据编码形式)text/plain (回车换行符分隔的键值对)

特殊案例
- 当一个表单元素name="isindex"并且type="text"而且满足如下要求时:
编码格式为 application/x-www-form-urlencoded
作为表单的第一个元素
则提交时只发送 value 值,不包含 name。
- 当name="_charset_"并且类型为 type=”hidden”时,而且满足如下要求时:
没有设置 value 值
提交时 value 自动使用当前提交的字符集填充。
表单提交接口:
submit()
提交表单:form.submit();
onsubmit()
表单提交事件
提交之前的数据验证
阻止事件的默认行为来取消表单提交
无刷新表单提交范例:
常用的方式是通过 AJAX 进行实现,这里使用 iframe 来做中介代理实现。
利用iframe实现表单的无刷新提交,兼容到主流浏览器(IE6+,Firefox最新,Chrome最新).