- ベストアンサー
JavaScriptのif文について質問したいのですが、
JavaScriptのif文について質問したいのですが、 <form>で文字を記入する欄に正しい文字を入力すると「正解」で違うと「不正解」というものにしたいのですが、やり方がわかりません。 仮に、 <form>の記入するらんに、答えが「▲□」とします。 そに「▲□」を<form>に記入して、「正解」「不正解」を表示したいのですが、 どうしたら・・・ ソースも記入して回答してください。 できれば、それに関するサイトも教えてください。(登録なし) おはやめに回答をお待ちしています。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
単純にやるとこんな感じ <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>
その他の回答 (2)
- yambejp
- ベストアンサー率51% (3827/7415)
>この文はなぜ「if文」を使っていないのですか? おお、そういえばifの質問でしたね var hyoji=(kaito===seikai)?"正解":"不正解"; というのは三項演算といってやってることはこんなことです if(kaito===seikai){ hyoji="正解"; }else{ hyoji="不正解"; } ifで分岐して特定の変数に代入するときに使うやりかたです
- yyr446
- ベストアンサー率65% (870/1330)
三項演算子:? を調べれば解りますよ。 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";
お礼
ご回答有難う御座います。 追加質問で、 この文はなぜ「if文」を使っていないのですか? 教えてください。