[jQuery] 文字列が含まれているかどうかの判定
スポンサーリンク
jQueryで取得したオブジェクトがある文字列を含んでいるかどうかを判定するために、is
メソッドとcontains
セレクタを組み合わせて使う方法があります。
例えば以下のhtmlがあった場合。
<ul> <li>机の上にあるみかん</li> <li>りんごは箱の中に</li> <li>かごの中のぶどう</li> </ul>
リストをクリックして、文字列が「りんご」を含むかどうか判定するには以下のコードになります。
$("li").click(function(){ if ( $(this).is(":contains('りんご')") ) { alert('「りんご」を含む行がクリックされました'); } });
「りんご」が含まれていればTRUE
、含まれていないならFALSE
を返します。
まあ、「りんご」を含む行のクリックに反応させるだけなら、is
を使わず、
$("li:contains('りんご')").click(function(){ ... })とするのが普通だと思いますが、オブジェクト取得後に文字列に応じて処理を分岐させる場合にこの書き方が必要な場合もあります。
スポンサーリンク
JavaScriptカテゴリーの投稿
- [Gmaps.js] 地図をドラッグした後の中心座標を取得する
- 圧縮後のJavaScriptやHtmlを元に戻すWebサービス
- Google Code Prettify導入が超絶簡単になっていた
- [JavaScript] 全角を2、半角を1と数えるコード
- [JavaScript] 指定範囲内の整数からランダムな値を得る
- [JavaScript] sort()メソッドによる配列の並び替え
- シンタックスハイライター「Google Code Prettify」のカスタマイズ
- [JavaScript] オブジェクトにプロパティを追加
- [JS] 正規表現の特殊文字を置換するJavaScript版preg_quote()
- [JS][jQuery] 要素の存在を確認する6通りのコードと実行速度
jQueryカテゴリーの投稿
- [jQuery] $.ajaxのコールバック関数にcontextで値を渡す
- [jQuery] rowspanを持つtableで行の表示・非表示を切り替える
- [jQuery] find()とchildren()の使い分け
- jQueryとPHPでAJAX通信を行う
- [jQuery] $('form').change()でフォーム全体の変更を監視する
- [jQuery] 属性が存在するかどうかチェックするコード
- [JS][jQuery] 要素の存在を確認する6通りのコードと実行速度
- [jQuery] tableの内容を取得する
- [jQuery] clone()で操作対象のエレメントを元の位置に保つ
- [jQuery] index()でクリックされたhtml要素が何番目の要素かを知る