プロが教えるわが家の防犯対策術!

Windows7 64ビット IE9

次のスクリプトでボタンを押しても反応しません。
どこがおかしいのでしょうか。教えてください。



<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">

<html>
<head>
<meta content="text/html; charset=Shift_JIS" http-equiv="content-type">
<title>貯血スケジュールの作成</title>

<script language="JavaScript">
<!--
function kotae(){
var kai = 37;
alert(kai);
}
//-->
</script>

</head><body>

<h3>問題</h3>
16+21= <button onclick="kotae()">答えを見る</button>
</body></html>

A 回答 (4件)

buttonタグは必須でしょうか?


ブラウザによってはサブミットされてしまうので工夫が必要です。

対応1:falseを返す
<script>
function kotae(){
var kai = 37;
alert(kai);
return false;
}
</script>
<h3>問題</h3>
16+21= <button onclick="return kotae();">答えを見る</button>

対応2:inputを使う
<script>
function kotae(){
var kai = 37;
alert(kai);
}
</script>
<h3>問題</h3>
16+21= <input type="button" value="答えを見る" onclick="kotae();">
    • good
    • 0
この回答へのお礼

どっちもやってみましたが動かないんですよね。
ボタンは表示されるんですが。
下のページのジャバスクリプトのサンプルはちゃんと動くんです。何がいけないのか分からないんですよね・・・
http://javascript.eweb-design.com/0501_alt.html

お礼日時:2012/01/25 17:19

No.3です。



、、、と思ったんですが、
エラーメッセージは出てますか?
エラーメッセージもない、No.1の対処2で動かないなら、ブラウザの設定だと思います。

ブラウザの設定でJavaScriptを使えるようにしてください。
ウェブサーバーにアップロードするなど、HTTP経由で読み込むかの確認もしてください。
    • good
    • 0
この回答へのお礼

何も設定を変えていないのに突然動くようになりました。
すみません。お騒がせしました。

お礼日時:2012/01/26 08:19

<button type="button" onclickその他同じ



としてみてください。


type属性を省略するとsubmitボタンとなります。
HTML4では<form>の外にあるsubmitボタンに関する規定はありません。(どんな動作をしてもかまわない)
HTML5では「何もしない」とだけ規定があります。
(イベントハンドラも何もしないのか、form送信のような行動"だけ"何もしない(イベントハンドラは処理する)のかの区別が規定されていません。)

ので、こういうブラウザに依存するところはデフォルト設定に任せるのではなく、明確に指定する方が良いです。
    • good
    • 0
この回答へのお礼

設定は全く変えていないのに、なぜか突然動作するようになり、以後全く問題なく動いています。一体何が原因なのか良く分かりません。動かないときも終始エラーメッセージも何も出なくて、訳が分かりません。とりあえず動くようになったのでよしとします。お騒がせしました。

お礼日時:2012/01/26 08:18

スクリプトは間違っていません。


使っているブラウザ側で、JavaScriptの実行を許可していないんでないかい。
IE9の画面下に、許可するか拒否するか選べるボタンが出ていれば、許可。
もしくは、インターネットオプションからセキュリティ開いて、レベルのカスタマイズから
「アクティブスクリプト」を有効にする。

で動かないかな。
    • good
    • 0
この回答へのお礼

やってみたんですが、すでに有効設定になっています。
たとえば、下のページのジャバスクリプトのサンプルはちゃんと動くんです。
何がいけないんですかね。
http://javascript.eweb-design.com/0501_alt.html

お礼日時:2012/01/25 17:18

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!