- - PR -
【ASP.NET】リンクボタンの二度押し防止
1
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2004-05-31 20:57
いつも大変勉強させて頂いております。
今VB.NETでWEBアプリを開発しているのですが、リンクボタンの二度押しを防止する方法が分からず困っております。過去に同じような話題があったのですが、どのように対応されたの分かりませんでした。 http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=6305&forum=7 私の場合も同じように一つの画面に、WEBフォーム用のボタンとリンクボタンが含まれています。 ボタンについては、formタグのonsubmitイベントで制御できたのですが、リンクボタンを制御できません。できれば、ボタンを押された場合、その後リンクボタンを押されても有効にしないというように、JavaScriptを使用してクライアント側でまとめて制御したいのですが、やはりそれは無理でしょうか? リンクボタンの制御について、みなさんどのように対処しておられるのでしょうか。どうかご教授下さい。 | ||||||||
|
投稿日時: 2004-05-31 23:26
飯塚と申します。
ドキュメント上のすべてのリンクオブジェクトとボタンオブジェクトのクリックイベントをトラップして、ドキュメントの状態(document.readyState)を判定する、という方法はいかがでしょうか。 1) DoublePostRestriction.js というファイルを作成する。 2) DoublePostRestriction.js に下記のソースを貼り付け、UTF-8 で保存する。
3) Web フォーム(ここでは WebForm1.aspx とする)の <head> セクションに以下の コードを挿入し、DoublePostRestriction.js を読み込むよう設定する。
4) ページにボタン、リンクを適当に張り、ポストバックイベントを記述する。 5) 動作を確認する。 きちんとテストしていませんが、汎用的に作っているのである程度再利用ができると思います。(各ページに <script> を1行埋めれば良い。) 私の環境(IE 6.0 SP1)では正常にポストバックし、ポストバック中のボタンやリンクのクリックを抑制することができています。 以上です。 | ||||||||
|
投稿日時: 2004-06-01 12:07
いいづかさん、ありがとうございます。
教えて頂いた方法で考えていたとおりの動きを実現することができました。 ほんとうにありがとうございました。 |
1