Select div 来自使用 jQuery 具有特定属性的列表

Select div from list that has certain properties using jQuery

这看起来很基础,但我在挑毛病!我有一个包含 html 个元素的 jQuery 对象,我想从中挑选某些元素。

HTML:

<div data-id="1">1</div>
<div data-id="2">2</div>
<div data-id="3">3</div>
<div data-id="4" class="x">4</div>

JS:

var list = $('div');

// How can I filter through this list?
// pseudo

var id = 3; // (dynamic value)

var div3 = list.SELECTME('[data-id="' + id + '"]');
var div4 = list.SELECTME('.x');

您可以使用 jQuery 的 .filter 功能来完成您想要的事情:

// using $ notation - $list indicates the variable contains a jQuery object
var $list = $('div');

var id = 3;

// utilize .filter to find items that match
var $div3 = $list.filter('[data-id="' + id + '"]');
var $div4 = $list.filter('.x');

console.log('div 3: ', $div3.text());
console.log('div 4: ', $div4.text());
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div data-id="1">1</div>
<div data-id="2">2</div>
<div data-id="3">3</div>
<div data-id="4" class="x">4</div>