2013-09-21 3 views
1

Мне было интересно, есть ли какой-либо метод (с использованием JS или иначе), чтобы автообновить форму с полем с именем и идентификатором как 'submit'. По сути, мой весь HTML код выглядит следующим образом:JavaScript form submit С полем под названием submit

<html> 
<body onload=myForm.submit()> 
<form id="myForm" name="myForm" action="http://example.com/examplePage.do" method="POST"> 
<input type=hidden name="val1" id="val1" value="some_Value"/> 
<input type=hidden name="val2" id="val2" value="another_Value"/> 
<input type=hidden name="val3" id="val3" value="yet_another_Value"/> 
<input type=hidden name="submit" id="submit" value="Continue"/> 
</form> 
</body> 
</html> 

Очевидно, что myForm.submit() возвращает ошибку myForm.submit is not a function. Сервер отклоняет запрос, если в поле «отправить» не указано поле «значение» как «Продолжить», и требование заключается в автоматической отправке.

ответ

6

Функция отправки для этой формы полностью недоступна (она была перезаписана). Однако вы можете украсть один из другого.

document.createElement('form').submit.call(document.getElementById('myform')) 

Не работает в старых IE. (Я думаю, поддержка поддерживается IE7)

+0

Я попробовал это. Теперь я получаю ** 'NS_ERROR_XPC_BAD_OP_ON_WN_PROTO: Незаконная операция над объектом WrappedNative prototype' ** – karniv0re

+0

http://jsbin.com/aWOROviC/1/ работает для меня в Firefox и Chrome. В каком браузере вы это пытаетесь? – Quentin

+0

Мой плохой! Это работает. Имел опечатку на идентификаторе формы. Исправлено в моем коде. Работает сейчас. Спасибо всем! – karniv0re

-1

Это должно работать нормально. :)

<html> 
 
<body onload="document.createElement('form').submit.call(document.getElementById('myForm'))"> 
 
<form id="myForm" name="myForm" action="http://example.com/examplePage.do" method="POST"> 
 
<input type=hidden name="val1" id="val1" value="value1"/> 
 
<input type=hidden name="val2" id="val2" value="value2"/> 
 
<input type=hidden name="val3" id="val3" value="value3"/> 
 
<input type=hidden name="submit" id="submit" value="Continue"/> 
 
</form> 
 
</body> 
 
</html>