fr-itaya / training

0 stars 0 forks source link

フロントエンド - JavaScript/jQuery - 条件分岐 #50

Closed fr-sato closed 10 years ago

fr-sato commented 10 years ago

■目的

jQueryでの条件分岐の書き方について学びます。

■課題

以下の要素をHTMLファイルの<article>タグ内に追加して下さい。

<form action="#" method="get">
  <input type="text" name="val"><input type="submit" value="送信">
</form>

送信を押したら、テキストフィールドの値によってアラートを表示する条件分岐を実装して下さい。

fr-itaya commented 10 years ago

本課題は12:30開始、工数見積3時間で行います。


内訳
fr-itaya commented 10 years ago

つまづいた箇所まとめ


比較演算子
JS PHP
一致 === ==
一致しない !== !=

★PHPと同じ書き方でも動作はするが、JS標準に則った方が厳密に比較される。

if文を繋げる時
JS PHP
else if elseif

★JSは間にスペースが要る。

jQueryのthisセレクタがif文で使えなかった

thisイベントが発生した要素を取得する。

$(function() {
  $('form').submit(
    function() {
      var str = $('input[name="val"]').val();
      if (str === '') {
        alert('入力してください');
      } else if (str.match(/^[0-9]+$/)) {
        alert('数字です');
      } else {
        alert('数字以外です');
      }
    });
});

このコードで:input[name="val"]をthisに置き換えると、thisはsubmitメソッドが発生したform要素を取得するためエラーになる。

fr-sato commented 10 years ago

確認しました、OKです。お疲れ様でした。