B06 画像をクリックしたら質問を出し、答えによってダイアログを出す2 -javascript:を使うケース-

ここではボタンと文字がクリックされるとOK/キャンセル(YES/NO)の質問のダイアログを出します。その後OK/キャンセルの選択結果による処理をalert文で書き出しています。YESを選ぶとtrue、NOはfalseを返しますので、if()文でtrue/falseそれぞれの場合の処理を分けて記述しておきます。


応用:
if()文の{ }の中の命令をalert()文以外に取り替えて使ってください。alert()の括弧の中の文章も好きな言葉に取り替えればいろいろな用途に使えます。
参照: javascript, if( ){ }else{ }, confirm(), alert(),

Sample

ボタンをクリックすると問題が出ます。



Source
ソース
(コピーしてお使いください)
<html>
<head>
<title></title>
</head>
<body>

<a href="javascript:function voi(){};voi()"
  onClick="
  if( confirm('奈良の大仏が手のひらにのってしまう大きさの牛久大仏がギネスブックにのっている。\nさあどっち?') == true ){
    alert('正解(^^)/ ')
  } else {
    alert(' 載っています(^^)')
  }
">
<img src="MONDAI1.GIF" width="120" border="0"></a>

 ボタンをクリックすると問題が出ます。

</body>
</html>
a href="javascript:命令文"でクリックしたら"命令文"を実行するという意味ですが ここではfunction voi(){}という 中味のない voi()という関数を作って から、続くvoi()で「なにもしない」^^;を実行してます。Netscapeの3.0からは作らなくてもvoid(0)という命令が用意されています。その場合は a href="javascript:void(0)" と書きます

if( xx == true ){ "命令文" }else{ "命令文" }は、もしxxがtrueなら最初の"命令文"を実行し、違ったら後の"命令文"を実行するという意味です。この場合、if( confirm("xxx") ){ "命令文" }else{ "命令文" }という風に==trueを省略してもokです

confirm("文章")は"文章"の入ったYES/NOダイアログを表示しOK(YES)ならtrue、キャンセル(NO)ならfalseを返します (IE4.0ではこの文章があまり長いと強制終了になる場合があるようですのでご注意ください)

\nは改行の意味です

alert("文章")で"文章"の入ったダイアログを表示します


Contents
| CONTENTS
| PART1 これだけ知っていれば大丈夫
| PART2 サンプルの紹介
| PART3 JavaScript言語仕様
| PART4 JavaScriptクイック書式一覧
| PART5 JavaScriptサイト
| オンラインサポートページ(回線をつないでください)


Maintained by
tato@fureai.or.jp works1997 Toshirou Takahashi