kt26
あなたも質問に答えられます!
ウォッチリストに追加
Twitterでつぶやく
- 状態:終了
- 回答数:2 / 45件
- 回答ポイント:70ポイント
- 登録:2008-02-09 14:56:04
- 終了:2008-02-16 15:00:06
- カテゴリー:
ウェブ制作
1
回答者:
GoldenDawn
2008-02-09 16:52:39
満足!
35ポイント
案1)
submit されたかどうかを管理する変数を追加する
submitted = false ; // Submit フラグ function formSubmit() { if (submitted == true) return ; submitted = true ; document.reqForm.submit() ; return false ; }
案2)
a 要素では disabled の値は無効なので button 要素に変えます。
見た目がボタンになるのが嫌ならスタイルシートで変更します。
<form action="test.php" method="post" name="reqForm"> <button id="formSbm" onclick="formSubmit();"><img src="sbm_button.jpg"></button> </form>
案1の方法はあまり上手く行きませんね・・。
案2のボタンは良い方法ですが、「a要素にしたい」からそうしているわけで、見た目の問題だけじゃないんです。
こんにちは
GoldenDawnさんの案1でも問題ないように思えるのですが、ひょっとして再クリックできてしまうというのは、フォームはsubmitされなくても、リンクが存在しているだけで駄目ということでしょうか?
それであれば、以下のようなのはいかがですか?
HTML
<form action="test.php" method="post" name="reqForm"> <!-- サブミット前に表示 --> <div id="before" style="display: block"> <a id="formSbm" href="javascript:formSubmit();"><img src="sbm_button.jpg"/></a> </div> <!-- サブミット後に表示 --> <div id="before" style="display: none"> <img src="sbm_button.jpg"> </div> </form>
JavaScript
function formSubmit() { // <a>タグ付きの<img>タグを非表示にする document.getElementById('before').style.display = 'none'; // <a>タグなしの<img>タグを表示する document.getElementById('after').style.display = 'block'; document.reqForm.submit() ; }
目的によってはちょっと冗長かもしれませんが。
何かの参考になれば。
GoldenDawnさんの案1では、何回もボタンをクリック出来てしまうんです。
t_shionoさんの方法だと上手くできるのですが、「aタグあり/なしに切り替えている」ので、同じIMGタグがありますし、ソースも増えてしまいます。
こちらは、目的としては出来ているので、参考とさせていただければと思います。ありがとうございます。
おとなり質問
- JavaScriptでサムネイルをクリック→元画像を別窓で表示させたいと思います。 画像と同じサイズの窓を開きたいのですが、画像サイズが不定なのでScript内でサイ..
6
- javascript 子ウィンドウから親ウィンドウへ子ウィンドウの値を親ウィンドウのフォームのテキストエリアへ値を渡す方法を教えてください。 親ウィンドウのフォ..
2
- 【高ポイント】【Javascript】ボタン一つで画像サイズの変更 よくボタンをクリックする事でそのページの文字サイズを変更する物を見かけます。 それと同様なスタ..
2
- Javascriptで色々書いてる人に質問です。 Javascriptのライブラリ書くとき、どのライブラリを基準にしたらいいんでしょうか? prototype.jsとかMochikitとか他の..
2
- Internet Explorerのデフォルト設定では、ローカルに置かれたJavaScriptを実行しようとすると、 「セキュリティ保護のため、コンピュータにアクセスできるアクテ..
3
- 自社CMの音源を自社のPCサイトでの無料公開とDLを考えています。方法としては、MP3などの音声で視聴できるファイルを掲載し、着うたDLボタンをクリックし、ユー..
3
- XPをsp2にしようとしているのですが インストールのあと、ディレクトリ名が無効です、インストールが完了していませんとなります。容量も十分あり、ウイル..
3
- IEのアドレスバーが選択できないのですが、考えられることは何ですか? ・マシンはIBM Z60m ・ウイルスソフトはKingsoft ・ウイルスチェックしても何もでません ..
2
- PCのマウスに関しての質問です。マウス(Mac用ワンクリックタイプ・ワイヤレス)を制作している専門家や実際にマウスを自分で作ったことが有る方に是非お知恵拝..
2
この質問・回答へのコメント
http://www.openspc2.org/reibun/javascript/form/002/
フラグ変数を1つ使ったほうが簡単だと思います。
-------
document.reqForm.formSbm.disabled = true;
これで、Aタグを非活性にしてるつもりだと思うのですが、
実際には、そういう動作はしないと思います。
フラグ変数を1つ使ったほうが簡単だと思います。
-------
document.reqForm.formSbm.disabled = true;
これで、Aタグを非活性にしてるつもりだと思うのですが、
実際には、そういう動作はしないと思います。
コメントでいただいた先のURLの方法を試していますが、
<input type="submit">
の、ボタンならalertが表示し、上手くできますが
aタグを使った、submit送信の場合、上手くできません。
あくまでも、Javascriptの送信+二重送信の防止が出来ればと思っています。
<input type="submit">
の、ボタンならalertが表示し、上手くできますが
aタグを使った、submit送信の場合、上手くできません。
あくまでも、Javascriptの送信+二重送信の防止が出来ればと思っています。