| <!DOCTYPE html> |
| <link rel="help" href="https://html.spec.whatwg.org/C/#implicit-submission"> |
| <script src="/resources/testharness.js"></script> |
| <script src="/resources/testharnessreport.js"></script> |
| <script src="/resources/testdriver.js"></script> |
| <script src="/resources/testdriver-vendor.js"></script> |
| <script src="./resources/targetted-form.js"></script> |
| <body> |
| <script> |
| // This test file is "optional" because triggering implicit submission by |
| // "Enter" key is not standardized. |
| |
| const ENTER = '\uE007'; |
| |
| promise_test(async () => { |
| let form = populateForm('<input name=text value=abc><input name=submiButton type=submit>'); |
| let event; |
| form.text.focus(); |
| form.addEventListener('submit', e => { event = e; }); |
| await test_driver.send_keys(form.text, ENTER); |
| assert_true(event.bubbles); |
| assert_true(event.cancelable); |
| assert_equals(event.submitter, form.submitButton); |
| assert_true(event instanceof SubmitEvent); |
| }, 'Submit event with a submit button'); |
| |
| promise_test(async () => { |
| let form = populateForm('<input name=text value=abc>'); |
| let event; |
| form.text.focus(); |
| form.addEventListener('submit', e => { event = e; }); |
| await test_driver.send_keys(form.text, ENTER); |
| assert_true(event.bubbles); |
| assert_true(event.cancelable); |
| assert_equals(event.submitter, null); |
| assert_true(event instanceof SubmitEvent); |
| }, 'Submit event with no submit button'); |
| </script> |
| </body> |