1
<div id="someId_123">
     <img class"testClass"/>
</div>

使用 JQuery,我想根据它的类以及 div 的 id 中有“123”这一事实来选择这个图像。

4

7 回答 7

3
$("div[id*='123'] img.testClass")
于 2012-08-31T15:23:51.187 回答
2

您应该可以使用'[id*="123"] > .testClass'. >指定父子关系。

于 2012-08-31T15:26:04.053 回答
2

我认为这会做到:

$("div[id*=123] img.testClass")
于 2012-08-31T15:26:13.563 回答
1
$(":div[id*=123] img.testClass");

这是一个有效的 jsFiddle:http: //jsfiddle.net/leniel/EdTF8/2/

您的 HTML 代码中还有一个错字:

<img class"testClass"/>

应该:

<img class="testClass"/>

我花了几分钟试图弄清楚为什么 jsFiddle 不工作。只是因为你没有=在班级名称前放一个标志。

于 2012-08-31T15:26:37.650 回答
0

这将在 ID 中的任意位置搜索 123,并使用类 testClass 获取图像。

$('[id*="123"] img.testClass')

如果您希望它是动态的,只需执行以下操作:

$('[id*="' + idNumber + '"] img.' + className)

jsFiddle 演示

于 2012-08-31T15:23:58.330 回答
0

这个怎么样:

$('img.testClass', '[id*="123"]')
于 2012-08-31T15:25:07.953 回答
0

首先获取指定类的所有图像(比选择所有节点更有效),然后过滤其父级具有符合特定条件的 id 的图像。

$('.testClass').filter(function(){ return this.parent().attr('id').match(/123/) })
于 2012-08-31T15:28:09.140 回答