- ベストアンサー
<input type="button">でボタンを押したときの処理
ボタンをクリックしたらalertによって下記のような文字列、trueかfalseを返すようにしたいのです。 fulction hantei(){ if(str.length > 6){ document.write("true") } else{ document.write("false") } } あと、functionにはdocument.writeが使えないようなのですが、そうならばどのようにして表示させるのでしょう? よろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
"alertによって"の表現が、どうにでもとれます。 「警告ダイアログを表示させたい」という意味であれば、#1の方の説明の通りです。 画面上のどこか文字列を変更したいならば、document.all(ID) と innerHTMLを利用できます。ただしNetscapeでは、4.x系も、7.x系も効きません。Opera、Firefoxを有効なようですね。 以下にサンプル <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html lang="ja"> <head> <meta http-equiv="Content-Script-Type" content="text/javascript"> <meta http-equiv="Content-Style-Type" content="text/css"> <meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> <title>てすと</title> <script type="text/javascript"> <!-- function func(message) { var targetItem = document.all("alertTarget"); targetItem.innerHTML = message; } // --> </script> </head> <body> <form target="."> <span id="alertTarget"></span><br> <input type="button" value="alert A" onclick="func('aaaa')"> <input type="button" value="alert B" onclick="func('bbbb')"> </form> </body> </html>
その他の回答 (1)
- turtlemach
- ベストアンサー率54% (29/53)
alertで表示したいのなら、 alert('true'); では? document.write は、画面に直接文字を書くようなイメージで、ダイアログを出すものではありません。 使うのであれば、前後にopenとcloseが必要です。 document.open(); document.write ("Hello World!"); document.close();
お礼
ご回答ありがとうございます。 >alertで表示したいのなら、 > alert('true'); >では? これだと、ボタン押したら必ず「true」としかでないのでは? 私がやりたいと思っているのは、条件分岐によりボタンを押したらtrueまたはfalseを表示させたいのです。 あとdocument.writeについて、ありがとうございます。
お礼
回答およびサンプルありがとうございます。 私が構想していたのは、このサンプルで当てはめた場合、ボタンは一つで、ボタンをクリックするとスクリプトの中でif文によって条件分岐させてaaaaまたはbbbbを表示させる、といった感じを考えていました。 本来考えていたのは、ボタンをクリックすると条件分岐によってtrue(上ではaaaa)またはfalse(上ではbbbb)をalertで表示させたかったのです。 乱文で失礼しました。
補足
お二人とも詳しい回答をありがとうございました。 おかげさまで、私が望むように動作するようになりました。 また、何かありましたらよろしくお願いします。