2

「送信」として名前とIDを持つフィールドを持つフォームを自動送信する方法(JSまたはその他を使用)があるかどうか疑問に思っていました。基本的に、HTML コード全体は次のようになります。

<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エラーを返します。サーバーは、値が「Continue」の「submit」フィールドがなく、これを自動送信する必要がある場合、リクエストを拒否します。

4

1 に答える 1

6

そのフォームの送信機能は完全にアクセスできません (上書きされています)。ただし、別のフォームから盗むことはできます。

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

古い IE では動作しません。(IE7以降で対応が出てくると思います)

于 2013-09-21T21:49:52.963 に答える