SubmitEvent.submitter
表示发送 submit 事件的表单元素。通常是 type 属性是 submit 的 <input>
元素或者 type 属性是 submit 的 <button>
元素,也可能是启动提交过程的其他元素。
1 | form.addEventListener('submit', (event) => { |
如果提交不是由表单控件触发的(使用 HTMLFormElement.requestSubmit() 方法),则 submitter 的值是 null。
表单外 HTML 元素通过绑定事件调用 HTMLFormElement.submit() 方法——不会触发表单的 submit 事件(也不会触发表单验证),所以不能通过 SubmitEvent 来获取 submitter 属性。
HTMLFormElement.requestSubmit
- HTMLFormElement.requestSubmit() 方法会触发表单验证,验证通过后会触发开发者自定义的 submit 事件。
- HTMLFormElement.submit() 方法会直接触发表单元素的原生提交——不会触发表单的 submit 事件(也不会触发表单验证),页面会跳转到 action 属性定义的 URL 或刷新(action 属性值为空时)。
语法:
1 | requestSubmit() |
调用 requestSubmit() 时指定的 submitter 参数必须是当前表单元素的后代或者必须具有引用当前表单的 form 属性,否则会抛出 DOMException。
HTMLFormElement: formdata event
formdata 事件在构建表示表单数据的条目列表后触发,例如在提交表单时或调用 FormData() 构造函数传入表单元素参数时。
1 | form.addEventListener('submit', (e) => { |
浏览器支持
原文链接
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 张坤的博客!
评论