0

UiApp を使用してフォームからデータを収集しますが、ユーザーに送信ボタンをダブルクリックさせます。これにより、doPost が 2 回実行されます。確かに、実際に2回投稿するには、非常に速くクリックする必要がありますが、それは起こります.

私の質問は: onMouseUp などで送信ボタンを無効にした経験のある人はいますか? これを行うより良い方法はありますか?複数の onClick ハンドラをボタンに追加すると不安定になる可能性があるため、注意するように言われました。これに対する安定した解決策はありますか?

フォームにファイルのアップロードがあるため、送信ボタンを使用する必要があります。

4

3 に答える 3

0

私はこの問題に直面してきましたが、Google が ClientHandlers を導入して以来、解決策があります。送信ボタンにクライアント ハンドラーを追加して無効にするだけです (サーバー ハンドラー関数または doPost を使い終わったら、忘れずに有効にしてください)。

var plswait = app.createClientHandler().forEventSource().setEnabled(false).setText('Please wait...'); 
var btnSubmit = app.createSubmit().addMouseDownHandler(plswait); 

私のお気に入りです。

于 2012-09-13T04:30:27.273 に答える