以下のように作ってみたんですけど、わたしは判定結果は四角の中に表示されるようにやったつもりだったんですけど、新しいページに「痩せてます」と表示されてしまいます。どこを直せば良いでしょう?
お願いします
<HTML>
<HEAD>
<TITLE>関数のテスト</TITLE>
<SCRIPT language="JavaScript">
<!--
function test()
{
height = document.aaa.h.value;
weight = document.aaa.w.value;
himan = (height-100)*0.9;

if (himan <= weight) {
document.write("痩せてます。");
}
else {
document.write("太っています。");
}
}
//-->
</SCRIPT>
</HEAD>
<BODY>
<form name="aaa">
<table>
<tr><td>身長</td><td><input name = "h"> </td></tr>
<tr><td>体重</td><td><input name = "w"> </td></tr>
<tr><td><input type="button" value ="判定" onClick = "test()" ></td></tr>
<tr><td>判定結果</td><td><input name = "hi"> </td></tr>
</table>

</form>
</BODY>
</HTML>

このQ&Aに関連する最新のQ&A

A 回答 (4件)

こんばんは。

昼間のうちに、いろいろ回答があり、アラートも出て、素晴らしいですね。私も勉強させていただきました。
せっかくですので、ブラウザで更新としても、新しいデータを入れるようには、ならないので、何度も試すために、リセットボタンを付けてみました。
このボタン<input type="reset" value="リセット">は、簡単に、いろんなときに付加して使えます。

<HTML>
<HEAD>
<TITLE>関数のテスト</TITLE>
<SCRIPT language="JavaScript">
<!--
function test() {

if (aaa.h.value == "") {
alert("身長を入力してください。");
return false;
}
if (aaa.w.value == "") {
alert("体重を入力してください。");
return false;
}


height = document.aaa.h.value;
weight = document.aaa.w.value;
himan = (height-100)*0.9;

if (himan >= weight) {         
document.aaa.hi.value="痩せてます。";
} else {
document.aaa.hi.value="太っています。";
}
}
//-->
</SCRIPT>
</HEAD>
<BODY>
<form name="aaa">
<table>
<tr><td>身長</td><td><input name = "h"> </td></tr>
<tr><td>体重</td><td><input name = "w"> </td></tr>
<tr><td><input type="button" value ="判定" onClick = "test()" ></td></tr>
<tr><td>判定結果</td><td><input name = "hi"> </td></tr>
</table>
<hr>
<input type="reset" value="リセット">
</form>
</BODY>
</HTML>


ただし、これは、関数JavaScriptの練習ならそれでいいのですが、コンピュータを使うにしては、暗算でも判定できるような計算なので、実際的には、活用は、どうかなと思います。

参考に次のようなコメントを見つけたので、読んでみてください。

__________________
標準体重を基に判断する

「ほっそり願望」に取りつかれて、やみくもに減量を実行する前に、まず自分が太っているかどうかを客観的に判断することが大切です。
 その目安として、あなたの体重を標準体重と較べて見ましょう。

   (身長-100)×0.9=標準体重(kg)
(例)(160cm-100)×0.9=54kg

 かつてはこのような数式で求めていましたが、これでは身長だけを基に計算しているのであまり正確とはいえません。

BMI(体格指数)を基に判断する

そこで今日ではBMI(Body Mass Index:体格指数) といって・・・・

BMI=体重(kg)÷身長(m)2 の数式で求めます。

例えば体重54kgで身長160cmの場合は・・・・

BMI=54÷(1.6)2 =21.0 となります。

 このBMI指数を基にしてやせか、標準か、太り気味か、肥満かを判定します。



BMI 判定
20未満 低体重(やせ)
20~24 標準体重(標準)
24~26.5 過体重(太り気味)
26.5以上 肥満体重(肥満)
________________

この4段階くらいで、判定が出せたら、利用価値が高いと思います。
    • good
    • 0
この回答へのお礼

まぁこんなに詳しく教えて下さるなんて!!感激です~ありがとうございました!そうですね私としては関数の練習として作ってみたのですが実際に使う時はコメントを参考にして作っていきたいと思います。BMI判定のほうが信用できますしね(^_^)
本当にありがとうございました☆

お礼日時:2001/11/10 12:03

ヾ(@⌒ー⌒@)ノおはよう御座います。

kajixです。
xruzさんの補足です。
xruzさんのだと未入力の時にも太っていますとでるのでエラーのアラートを出すようにしました。

<HTML>
<HEAD>
<TITLE>関数のテスト</TITLE>
<SCRIPT language="JavaScript">
<!--
function test() {

if (aaa.h.value == "") {
alert("身長を入力してください。");
return false;
}
if (aaa.w.value == "") {
alert("体重を入力してください。");
return false;
}


height = document.aaa.h.value;
weight = document.aaa.w.value;
himan = (height-100)*0.9;

if (himan >= weight) {         
document.aaa.hi.value="痩せてます。";
} else {
document.aaa.hi.value="太っています。";
}
}
//-->
</SCRIPT>
</HEAD>
<BODY>
<form name="aaa">
<table>
<tr><td>身長</td><td><input name = "h"> </td></tr>
<tr><td>体重</td><td><input name = "w"> </td></tr>
<tr><td><input type="button" value ="判定" onClick = "test()" ></td></tr>
<tr><td>判定結果</td><td><input name = "hi"> </td></tr>
</table>

</form>
</BODY>
</HTML>

もう少し本当はチェックを入れた方が良いのですが時間が無いので(^∧^) ゴメンなさい。
急ぎでやったので間違ってるかもσ(^_^;)アセアセ...
あとは少しづつ機能を追加していってください。
    • good
    • 0
この回答へのお礼

お忙しいのにありがとうございました!アラートってこうやって使うんですねぇ。ごめんなさい超初心者で(>_<)まだ勉強し始めて4日目くらいなんですよ~。まだまだ修行中の身なのでこれからもどうぞよろしくお願いします☆ほんとにありがとうございました!

お礼日時:2001/11/10 11:57

おはようございますtomo-naoさん、xruzです。


こんな感じでしょうか?

<HTML>
<HEAD>
<TITLE>関数のテスト</TITLE>
<SCRIPT language="JavaScript">
<!--
function test()
{
height = document.aaa.h.value;
weight = document.aaa.w.value;
himan = (height-100)*0.9;

if (himan >= weight) {         // 変えました
document.aaa.hi.value="痩せてます。"; // 変えました
} else {
document.aaa.hi.value="太っています。"; // 変えました
}
}
//-->
</SCRIPT>
</HEAD>
<BODY>
<form name="aaa">
<table>
<tr><td>身長</td><td><input name = "h"> </td></tr>
<tr><td>体重</td><td><input name = "w"> </td></tr>
<tr><td><input type="button" value ="判定" onClick = "test()" ></td></tr>
<tr><td>判定結果</td><td><input name = "hi"> </td></tr>
</table>

</form>
</BODY>
</HTML>

がんばってくださいね(~:~i
    • good
    • 0
この回答へのお礼

ありがとうございました!うまく作動しましたよ~(^_^)でもこんな基本的なところでつまづくなんてあたしってばダメだなぁ(>_<)まだまだ修行中の身なのでこれからもどうぞよろしくお願いします☆ホントにありがとうございました!!

お礼日時:2001/11/10 11:52

今、時間が無くて、正解が書けないのですが、



if (himan <= weight) {
document.write("痩せてます。");

となっているので、判定をフォーム内でなく、すぐ書き出していると思います。

これは、判定をフォーム内に書くときの条件式とするべきですね。
<INPUT TYPE="text" NAME="hanteiA">
などのように、hanteiAをフォーム内に書き出すときの条件にしてみてください。

夕方だったら続きを考えられますが…
    • good
    • 0
この回答へのお礼

ありがとうございます!今日yuri-mbcさんのを参考にもう一度がんばってみます!もしお時間があればつづきをお願いできますか?よろしくお願いします。ホントにありがとうございました☆

お礼日時:2001/11/09 10:52

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


人気Q&Aランキング

おすすめ情報