2012-05-11 9 views
17

セレクタを使用している場合はのようになります。現在はdocumentで検索しています。jqueryの検索範囲を制限する方法

div要素内の要素のみを検索するにはどうすればよいですか?

答えて

25

jQueryセレクタは、あなたがよく知っているかもしれないCSSセレクタとよく似ています。その後、

まず、div要素を選択して、そこから降りる:

$('#my-div').find('some-selector'). 

または問題の要素の子要素に一致するように、あなたのセレクタを構築:

$('#my-div some-selector') 
+7

(最初のものが速くなる) – Amadan

+1

@Amadan:これは短い同等である

var $matches = $('.adiv', '#mydiv'); 

を使用しています。なぜあなたはそんなに確かですか? – gdoron

+1

jspref time !!!! –

0
var elements = $('div ' + yourSearch); 
7
var elems = jQuery(".foo", jQuery("#divYourWantToLimitTo")); //BAD 
//or 
var elems = jQuery("#divYourWantToLimitTo .foo"); //Better 
//or 
var elems = jQuery("#divYourWantToLimitTo").find(".foo"); //BEST 
+1

最初のオプションが間違っています.jQueryは、コンテキストとしての文字列セレクタ以外はありません。ドキュメントをチェックしてください。 – gdoron

+0

@ gdoron - それは私のように、内部的に第3のオプションとまったく同じになるだろうと説明してください。私はドキュメントが "文脈として使用するDOM要素、ドキュメント、またはjQuery"などを言うことを認識しますが、それはうまくいくように見えますか? – adeneo

+0

@adeneo変更されました... – epascarello

0
$('div-selector').find('the selector-you-are-looking-for'); 
2

のjQuery特定の要素を検索するいくつかの方法を提供します:

$("#your_div").find(".your_things");  //Find everything inside 
    //-or- 
$("#your_div").filter(".your_things");  //Find only the top level 
    //-or- 
$("#your_div .your_things");    //Easiest 
10

旧質問、誰もが

例えば(2番目のパラメータとして、あなたが希望範囲、すなわちあなたのdivセレクタを使用して)スコープ jQueryのセレクタを逃しているようです

var $matches = $('#mydiv').find('.adiv'); 
関連する問題