标题可能有点混淆,但这是我能想到的最好的。jQuery:select tr具有所有td动态匹配筛选条件
我需要找到其中包含td
元素匹配提供过滤条件的所有tr
元素。
这是我的样品,
<tr class="row" id="1">
<td class="philips">PHILIPS</td>
<td class="h4">H4</td>
<td class="lamp">Lamp<td>
</tr>
<tr class="row" id="2">
<td class="philips">PHILIPS</td>
<td class="h5">H5</td>
<td class="bulb">Bulb<td>
</tr>
<tr class="row" id="3">
<td class="neglin">NEGLIN</td>
<td class="w5w">W5W</td>
<td class="tube">Tube<td>
</tr>
<tr class="row" id="4">
<td class="philips">PHILIPS</td>
<td class="h4">H4</td>
<td class="bulb">Bulb<td>
</tr>
<tr class="row" id="5">
<td class="osram">OSRAM</td>
<td class="hb3">HB3</td>
<td class="tube">Tube<td>
</tr>
<tr class="row" id="6">
<td class="neglin">NEGLIN</td>
<td class="w5w">W5W</td>
<td class="lamp">Lamp<td>
</tr>
如果我通过filter[0]
为 '十字',具有ID的结果返回tr
- 2和
那么如果我通过第二个过滤器; filter[1]
为 'H4',结果应被过滤至
- 1和
我试图this question。
其中有this answer。
$('tr')
.has('td:nth-child(1):contains("Audi")')
.has('td:nth-child(2):contains("red")')
.doSomeThing();
但是,我希望我的过滤器能够动态应用。我将如何插入第三个has
函数?
我不想去if-else
或switch-case
的方式,如果这是可能的出来他们。
如果您在链中取出或添加.nthFilter调用,您可以轻松地进行测试,实际上它非常有趣:) – Filip