• ベストアンサー

JavaScriptのif文について質問したいのですが、

JavaScriptのif文について質問したいのですが、 <form>で文字を記入する欄に正しい文字を入力すると「正解」で違うと「不正解」というものにしたいのですが、やり方がわかりません。 仮に、 <form>の記入するらんに、答えが「▲□」とします。 そに「▲□」を<form>に記入して、「正解」「不正解」を表示したいのですが、 どうしたら・・・ ソースも記入して回答してください。 できれば、それに関するサイトも教えてください。(登録なし) おはやめに回答をお待ちしています。

質問者が選んだベストアンサー

  • ベストアンサー
  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

単純にやるとこんな感じ <script> function check(obj){ var seikai="▲□"; var kaito=obj.form.elements["kaito"].value; var hyoji=(kaito===seikai)?"正解":"不正解"; alert(hyoji); } </script> <form> <p> <input type="text" name="kaito" /> <input type="button" value="check" onclick="check(this)"/> </p> </form>

airu_Love
質問者

お礼

ご回答有難う御座います。 追加質問で、 この文はなぜ「if文」を使っていないのですか? 教えてください。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (2)

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.3

>この文はなぜ「if文」を使っていないのですか? おお、そういえばifの質問でしたね var hyoji=(kaito===seikai)?"正解":"不正解"; というのは三項演算といってやってることはこんなことです if(kaito===seikai){ hyoji="正解"; }else{ hyoji="不正解"; } ifで分岐して特定の変数に代入するときに使うやりかたです

全文を見る
すると、全ての回答が全文表示されます。
  • yyr446
  • ベストアンサー率65% (870/1330)
回答No.2

三項演算子:? を調べれば解りますよ。 http://www.tohoho-web.com/js/operator.htm#cond より引用  exp1 ? exp2 : exp3 (e3/N2) exp1 が真であれば exp2 を、さもなくば exp3 を返します。 次の例は xx が 5 以上であれば "big"、さもなくば "small" を yy に代入します。  yy = (xx >= 5) ? "big" : "small";

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • if文についてです

    アンケート入力の際、if文で5ヵ所のうちひとつでも空欄の場合「未記入です」と表示させたいのですが、下記のプログラミングでは半角数字でアンケート欄に入力すると上手くいくのですが日本語でアンケート欄に入力すると未記入のエラーがでます。原因はなぜなのでしょうか? (cgiファイルの一部分です) if($name == "" or $address == "" or $day == "" or $month == "" or $year == "" ){ $error1 ="未記入項目があります"; &Error; exit; } exit; sub Error{ print<<FORM; <html> <head> <title>空欄エラー</title> </head> <body> $error1 <form action="okweb.cgi"> <input type="submit" value="戻 る"> </form> </body> </html> FORM }

    • ベストアンサー
    • Perl
  • if文を使って

    if文の条件に○○に文字が入力されたらという条件をつけたいのですが どのように記入すればいいのでしょうか??

  • javascript if文

    javascript if文 まずソースコードなのですが var num; var sign; num = 20; (1)sign = num >= 0 ? '正' : '負'; console.log( num + "は" + sign ); (2)if(num >= 0){ console.log( num + "は" + sign ); } (1)と(2)は同じ意味なのですか?(1)のやり方はあまり見かけないのですが用途としてはどのような時に使うのですか? 馬鹿な質問でスミマセン。

  • IF文の作り方

    エクセル VBA 超入門のものなんですけど、質問させてください。 A1のセルに 1を入力したら、セルD1に正解を表示させ、 それ以外なら不正解を表示させたいのですが、  以下の文でつくると 実行した最初しか起動してないような気がするのですが、教えてください。どうすればセルA1を入力するたびに、 正解、不正解をD1に表示させれるでしょうか? Sub テスト() If Range("A1") = "1" Then Range("D1").Value = "正解" Else Range("D1").Value = "不正解" End If End Sub

  • IF文について

    アクセス97での質問です 今、入力フォームを作成してまして、入力チェックのプログラムを作成しているのですが、NULLや文字数等のチェックはうまくいくのですが、どうしてもうまく出来ないのがあるんです それは半角で5文字入力できるテキストボックスがあって その先頭の一文字が半角カナじゃない時にエラーを出したいんです 他のエラーチェックもIF文を使ってやっているので、同じようにIF文で作りたいのですが、いい方法が思い浮かびません わかる方がいらっしゃいましたら教えていただけませんか? 宜しくお願いします

  • EXCELのIF文について

    あるセルに文字が入力されていないときは、もうひとつのセルの数字を=で持ってきて、 入力されたときは0か空白にできるIF文の作り方ありますでしょうか?

  • javascriptを教えて下さい

    上の欄に文字を入力しボタンを押すと下の欄に表示するhtmlを作りたいと思っております 何回か自力でやってみたのですがわからないのでどのようにするかご教授願いたいです・・・ ソースは <form method="POST" action="検索"> <textarea name="msg" cols="30" rows="10"> ここにメッセージをどうぞ </textarea> <br> <input type=submit value="送信"> <br> <input type=reset value="クリア"> </form> <form method="POST" action="受信"> <textarea name="msg" cols="30" rows="10"> </textarea> </form> このようなふうになってます このままじゃダメでjavascriptを使うということはわかっているのですがどのようにしたらいいかわかりません・・・ 何回か試したのですがうまくいきませんでした 初心者なのでアドバイスお願いします!

  • If文を2つ並べると2つ目の文が実行されない。

    プログラムの中で*A*のIf文は実行されますが、*B*のIf文は実行されません。 何故でしょうか?教えて下さい。 ちなみに、<中略>の部分にもIf文は同じ様にあります。(内容は違うけど) <SCRIPT language="javascript"><!-- function ka() { ******<中略>****** *A* if (document.fomu.email.value ==""){        alert ("メールアドレスを記入して下さい。");        fomu.email.focus();        return false; } *B* if (document.fomu.email.value.match(/\w+@\w+/){        alert ("正しくメールアドレスを記入して下さい。");        fomu.email.focus();        return false; } ******<中略>******* } //--></SCRIPT>

  • for文,if文,c++

    c++でやっていますが、for文,if文,showmessage()を利用して作りたいのですが、 どこからはじめればよいのかよくわかりませんので教えて下さい。 フォームにラベル1つ、テキストボックス1つ、ボタン1つを作ります。 ラベルには「北海道の県庁所在地はどこですか?」と表示されます。 テキストボックスに入力して、正解であれば「正解です」と表示され、次の県に進み ます。 不正解であれば「不正解です」と表示して、同じ県を繰り返します。 47都道府県がすべて終わったらフォームを閉じます。

  • javascriptの初心者です。

    初歩的質問で失礼します。 javascriptでフォームの中にテキスト欄が3つあり、 テキスト欄3に入力された数字が奇数なら赤、偶数なら青となるプログラムにしたいと思い、 下記のようにしまいしたが、elseの青文字にしかならずに悩んでいます。 本当に初心者ですいません。が、アドバイス頂けたら宜しくお願いいたします。            function men(){ tate=document.form1.text1.value; yoko=document.form1.text2.value; document.form1.text3.value=tate*yoko/2; if ((men%2)==0){ document.form1.text3.style.color="red"; }else { document.form1.text3.style.color="blue"; } }