0
<div id ="parent"> 

<div>1</div>
<div>2</div>
<div>3</div>

</div>

如何在 id=parent 的 div 中选择带有文本“2”的 div。

4

4 回答 4

2

Adilkayen的解决方案很好,但在这样的示例中可能会失败

<div>12</div>
<div>2</div>
<div>3</div>

这是一个总能找到完全匹配的解决方案:

var div = $('#parent div').filter(function() { return $(this).text() === '2'; });

如果值可以有空格,例如这样:

<div>
    2
</div>

您需要在比较之前修剪字符串:

$('#parent div').filter(function() { return $.trim($(this).text()) === '2'; });

演示

没有.trim():先试后买

.trim()先试后买

于 2013-08-19T11:57:39.903 回答
1

使用 jQuery :contains选择器:

$('#parent').find('div:contains("2")')
于 2013-08-19T11:47:06.070 回答
1

您可以使用后代选择器:contains选择 div by :contains

现场演示

$('#parent div:contains("2")')
于 2013-08-19T11:47:42.730 回答
0

尝试这个:

JSFiddle

$('div div:contains("2")')
于 2013-08-19T12:04:48.463 回答