6

ファイルをアップロードするための簡単なフォームがあります。通常の送信ボタンを使用すると、すべてが期待どおりに機能します。

<form id="mainform" method="post" action="/" enctype="multipart/form-data">
...
<input type="submit" id="submit" value="Analyze File"/>
</form>

しかし、それを通常のボタンに変更し、Javascript を使用してフォームを送信すると、何も起こりません。

<input type="button" id="submit" value="Analyze File" onclick="document.getElementById('mainform').submit()"/>

onclick ハンドラーが実際に呼び出され、フォームのルックアップが正しく機能することを確認しました。たとえば、に変更するとonclick="alert(document.getElementById('mainform').action)"、アラートが期待どおりに表示され、フォームのターゲット URL が表示されます。しかし、何らかの理由で、submit() を呼び出してもフォームが送信されません。

4

2 に答える 2

9

問題はあなたのsubmitボタンです。その ID は です。これは、機能ではなくID のボタンを表すsubmitことを意味します。document.getElementById("mainform").submitsubmitsubmit

そのボタンの ID を変更するだけで、問題ありません。

于 2013-09-19T19:19:53.523 に答える