Submits a form. Example: form = driver.find_element(By.NAME, "login") form.submit()
(self)
| 114 | self._execute(Command.CLICK_ELEMENT) |
| 115 | |
| 116 | def submit(self) -> None: |
| 117 | """Submits a form. |
| 118 | |
| 119 | Example: |
| 120 | form = driver.find_element(By.NAME, "login") |
| 121 | form.submit() |
| 122 | """ |
| 123 | script = ( |
| 124 | "/* submitForm */var form = arguments[0];\n" |
| 125 | 'while (form.nodeName != "FORM" && form.parentNode) {\n' |
| 126 | " form = form.parentNode;\n" |
| 127 | "}\n" |
| 128 | "if (!form) { throw Error('Unable to find containing form element'); }\n" |
| 129 | "if (!form.ownerDocument) { throw Error('Unable to find owning document'); }\n" |
| 130 | "var e = form.ownerDocument.createEvent('Event');\n" |
| 131 | "e.initEvent('submit', true, true);\n" |
| 132 | "if (form.dispatchEvent(e)) { HTMLFormElement.prototype.submit.call(form) }\n" |
| 133 | ) |
| 134 | |
| 135 | try: |
| 136 | self._parent.execute_script(script, self) |
| 137 | except JavascriptException as exc: |
| 138 | raise WebDriverException("To submit an element, it must be nested inside a form element") from exc |
| 139 | |
| 140 | def clear(self) -> None: |
| 141 | """Clears the text if it's a text entry element. |
nothing calls this directly
no test coverage detected