25

看起来在使用选择器时JQuery会在当前搜索。document

如何仅在元素内部搜索div元素?

4

6 回答 6

33

jQuery 选择器的工作方式与您可能更熟悉的 CSS 选择器非常相似。

首先,选择 div,然后从该 div 下降:

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

或构建您的选择器以匹配相关元素的子元素:

$('#my-div some-selector')
于 2012-05-11T00:30:55.153 回答
16

老问题,但似乎每个人都错过了作用域jQuery 选择器(使用你想要的作用域,即你的 div 选择器,作为第二个参数)

例如使用

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

这是一个较短的等价物:

var $matches = $('#mydiv').find('.adiv');
于 2016-02-03T11:48:47.503 回答
8
var elems = jQuery(".foo", jQuery("#divYourWantToLimitTo") );  //BAD
//or
var elems = jQuery("#divYourWantToLimitTo .foo");  //Better
//or
var elems = jQuery("#divYourWantToLimitTo").find(".foo");  //BEST
于 2012-05-11T00:31:54.327 回答
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
于 2012-05-11T00:35:10.907 回答
0
var elements = $('div ' + yourSearch);
于 2012-05-11T00:30:52.390 回答
0
$('div-selector').find('the selector-you-are-looking-for');
于 2012-05-11T00:32:34.957 回答