Вопрос: Как вы можете отправить форму с помощью Javascript, если один ввод формы имеет имя submit
?
Фон: Я перенаправляю пользователя на другую страницу со скрытой формой HTML. Я не могу изменить имя на (скрытых) входах, так как другая страница находится на другом сервере, и входы должны быть точно такими, какие они есть. Моя форма HTML выглядит следующим образом:
<form id="redirectForm" method="post" action="http://www.example.com/">
<input name="search" type="hidden" value="search for this" />
<input name="submit" type="hidden" value="search now" />
</form>
Я использую следующую строку javascript для автоматической отправки формы сегодня:
document.getElementById('redirectForm').submit();
Однако, поскольку имя одного входа "submit" (это не может быть что-то другое или другой сервер не будет обрабатывать запрос), document.getElementById('redirectForm').submit
относится к входу, поскольку он переопределяет функцию формы submit()
.
Сообщение об ошибке в Firefox: Error: document.getElementById("requestform").submit is not a function
. Аналогичное сообщение об ошибке в Safari.