jQueryによる要素の存在チェックまとめ
jQueryによる要素の存在チェックまとめです。
jQueryを実行する際、「$(selector)」が成功してjQueryオブジェクトが生成されたことを判断したいケースがあるかと思います。なかったらすいません。
ということで、jQueryで要素(jQueryオブジェクト)が1つでも存在することをチェックする方法を調べてみました。実際に動かした結果でまとめてます。
サンプルはscript要素で括ってますが、必要に応じて「$(function(){ ... });」などで括ってください。間違った情報・表現等がありましたら適宜修正しますのでご指摘ください。
1.$(selector)[0]
「$(selector)」で生成されるjQueryオブジェクトは配列のように扱える(配列の基本メソッドが使える訳ではない)ので、0番目の要素をチェックすることで存在チェックを行えます。
<script>
if ($('div')[0]) {
alert('Exist');
} else {
alert('No exist');
}
</script>
2.$(selector).get(0)
get()は、パラメータで指定したインデックスのjQueryオブジェクトに格納されているDOMを取得するメソッドです。パラメータに「0」を指定しないとうまくチェックできないようです。
<script>
if (jQuery('div').get(0)) {
alert('Exist');
} else {
alert('No exist');
}
</script>
3.$(selector).length
lenghtは、jQueryオブジェクトのインデックス数を保持しています。インデックス数が「0」の場合は要素が存在しないと判断できます。
<script>
if ($('div').length) {
alert('Exist');
} else {
alert('No exist');
}
</script>
4.$(selector).size()
size()はjQueryオブジェクトのインデックス数を返却するメソッドです。インデックス数が「0」の場合は要素が存在しないと判断できます。
<script>
if ($('div').size()) {
alert('Exist');
} else {
alert('No exist');
}
</script>
5.$(selector).is('*')
is()は、要素集合のうち、1つでも条件式に合致する要素があればtrueを返すメソッドです。ワイルドカードの「*」を設定することで、指定要素のすべてに合致するかを判定できるようです。
<script>
if ($('div').is('*')) {
alert('Exist');
} else {
alert('No exist');
}
</script>
Posted by yujiro このページの先頭に戻る
- jQuery+ajaxでモーダルのコンテンツを取得する方法
- jQueryでパスワードの表示・非表示を切り替えるサンプル
- jQueryでファイル選択時にプレビュー表示する方法
- ラジオボタンをjQueryで解除する方法
- テーブルのセルをポイントすると行と列を反転表示するjQueryプラグイン「Table Hover」
- jQueryで親ページからiframeのスクロールバーを非表示にする方法
- jQueryのカスタムビルドが簡単にできるサービス「jQuery Builder」
- jQueryでCSSをまとめて書き換える方法のまとめ
- 親ページからiframe内の要素にCSSを適用させる方法
- jQueryで要素を削除する方法のまとめ
- jQueryでテキストを追加するたびにスクロールさせる方法
- jQuery.ajax()でファイルをアップロードする方法
- preventDefault()で無効にしたイベントを有効にする方法
- jQueryで要素数を取得する方法のまとめ
- jQueryやJavaScriptでパスワードフィールドの文字を表示する方法
トラックバックURL
コメントする
greeting