TOP今月刊既刊I/OサポートQ&AWeb I/O通販お問い合わせ
 Q&A > はじめてのJavaScript 書名検索: 詳細検索...
Q&A一覧
Q

ダイアログに文が表示されない問題とp.88のソースについて

p.84〜p.85のダイアログで、何度やっても、

alert(name+"さん、調査は終わりました。
nnあなたは"+school+"に通ってますね。
nボートはお"+boat+"ですねnnありがとうございました。");

のところで、ダイアログにschoolの後の文がまったく表示されません。
質問を入れ替えたり場所を変えたりも同じでした。
「name」や「boat」などは、「school」の前にもってくると、表示されました。

また、p.88のソースを写したのですが、何も表示されません。

【HTMLファイル】
<html>
<head>
<title>BMI計算</title>
<Meta http-equiv="content-script-type" content="text/javascript">
<script src="js_bmi.js" type="text/javascript"></script>
</head>
<body onload="bmi();">
</body>

【javascriptファイル】
function bmi(){
   ver taijyu=61;
   ver shincyou=1.75;
   ver kekka=Math.round(taijyu/(shincyou*shincyou));
   ver hyouka;
   if(kekka<18){hyouka='やせ';}
   else if(kekka<25){hyouka='標準';}
  else{hyouka='肥満';}
   document.write("あなたのBMI指数は、"+kekkka+"です。r
体系の評価は、""+hyouka+""です。");
}

2006年11月04日受付
A
先に、『BMI計算』のコードについてですが、記述に細かな間違いがありました。
JavaScriptで、変数は「var」と書いて宣言します(「variable」を略した言葉なので)。
 
よって、正しくは、以下のようになります。
 
function bmi(){
    var taijyu=61;
    var shincyou=1.75;
    var kekka=Math.round(taijyu/(shincyou*shincyou));
    var hyouka;
    if(kekka<18){hyouka='やせ';}
    else if(kekka<25){hyouka='標準';}
   else{hyouka='肥満';}
document.write("あなたのBMI指数は、"+kekka+"です。r

体系の評価は、""+hyouka+""です。");
}
 
また、ダイアログを使ったコードのほうも、おそらく何らかの記述の間違いがあるかと思います。
以下に、本に載せてあるコードを示します。
 
<HTML>
<HEAD>
<SCRIPT>
function cyousa() {
alert("これからいくつか質問をします。");
name=prompt("あなたの名前は何ですか?","マイケル");
school=prompt("どこの学校に通っていますか?","国立T大学");
if(confirm("ボート競技は好きですか?")) {boat="好き";}
else {boat="嫌い";}
alert(name + "さん、調査は終わりました。nnあなたは" +school + "
に通ってますね。nボートはお" + boat + "ですね。nnありがとうございました。");
}
</SCRIPT>
</HEAD>
<BODY onload="cyousa()">
ダイアログによる個人調査コード
</BODY>
</HTML>
最終更新日:2010年06月16日 17時47分16秒
▲このページの上へ