JavaScript(JScript)とSubmitについて

[戻る]
Ton 2007/01/24(水) 18:45:07
いつもお世話になっております。

現在以下の環境で開発しております。
環境:WinXP ProSP2、Win2003Server、WebLogic8.1、JDK1.4

現在、JSPとservletによる開発で、画面Aで検索データを
入力し、Button1をクリックすると、JavaScriptの関数を
呼んで入力データのチェックをしてからWebサーバに対して
Submit処理を行い、Webサーバ側でDB検索し取得結果を元に
画面Aを再構築してクライアント側に表示するものを作成
しています。

質問したいことは以下のように、Button1をクリックしたときに
2度押し防止のためにフラグ制御をしているのですが、Webサーバの
処理が遅いときにフラグ制御が効いていないときがあり、
Submit処理が再度実行されることがあります。

------------------以下サンプルソース------------------
var flg = 0; →グローバル定義をしています。
function func_Submit{
    if(count > 0){
        alert("現在処理中です。");
        return;
    }else{
        count = count + 1;
    }
    self.document.FORM.submit() ;
}
------------------------------------------------------


なぜフラグ制御ができないのか、確認するためにButton1をクリックした
ときにSubmit処理の前でカーソルを砂時計にし、再描画時のonLoad処理で
カーソルを元に戻すようにしたのですが、Submit処理が実行され、
サーバ側の処理が実行されているにも関わらずカーソルが砂時計に変更
されません。

このことから、JavaScriptの変数操作はすぐに実行されると思って
いたのですがSubmit処理が絡むと変数の値の更新がすぐに行われない
のではないかと考えています。

根本的な考え方がおかしい、これを見落としているなど、ご存知の方が
いらっしゃいましたらお知恵をお貸しください。

以上、よろしくお願いいたします。

Ton 2007/02/05(月) 13:21:49
[[解決]]
いうも、お世話になっております。

まだ解決はしていませんが、別なフォーラムで質問を
投げてみたいと思います。

このサイトがCメインのサイトであることは、
承知の上で質問させていただきましたが、
大丈夫かなと楽観視していた部分もありましたが、
特にレスもありませんので、この質問を解決済みと
させていただきたいと思います。

マルチポストの形になり大変申し訳ございませんが、
ご了承願います。

申し訳ございませんでした。

とおりすがり 2007/02/05(月) 15:19:50
昔やったプロジェクトを見ましたけど、同様のコードで
2重クリックの制御してますね。
なんでだろ。

このほかには、ボタンクリック時にボタンをdisableにして
再びボタンを押させない方法もありますよ。

古いスレッドには追加発言できません。