0

Spring MVC を使用して Web ベースの Java アプリを実装しています。

私が今行っていることは、ユーザーが一連のラジオ ボタンから選択し、[送信] ボタンをクリックして一連のデータを CSV 形式でエクスポートできるページを提供することです。

しかし、私は状況に遭遇しました。

ユーザーが 1 つの CSV をダウンロードした後、別の CSV をダウンロードする場合はいつでも、[送信] ボタンを再度クリックすると、ダウンロード プロセスは開始されず、「アクションは既に送信されています。アクションが完了するまで待ちます。」というダイアログが表示されます。現れます。

これが私のコードです:

<form:form action="handle_export?user_id=${userId}" method="post">
                <div>
                    <table>
                        <tr>
                            <td>
                                <input id="set0" type="radio" name="exportType" value="0"/>
                            </td>
                            <td>
                                <label for="set0">dataset0 Export</label>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <input id="set1" type="radio" name="exportType" value="1"/>
                            </td>
                            <td>
                                <label for="set1">dataset1  Export</label>
                            </td>
                        </tr>
                    </table>
                </div>

            <input type="button" class="submit button-1" value="Download" name="bottom_Download" />
    </form:form>

「送信」ボタンを複数回起動できる可能性はありますか?

どうもありがとう。

4

1 に答える 1

0

私は黒板に苦労してきましたが、次のことを解決しました:

-FORM から "action" を
削除します -JS で関数を作成します。たとえば、generateCSV() -関数は次のようになります。

var userid = document.getElementById('userid');
window.open('handle_export?user_id=' + userid);

handle_export で、次の値を取得します。

String userid = request.getParameter("userid");
// ...
// generate and download file

このようにして、新しいウィンドウと黒板で開かれ、「アクションは既に送信されました。アクションが完了するまで待ちます」というダイアログは表示されません。.

これがお役に立てば幸いです。

于 2016-10-27T12:24:52.077 に答える