1
我已經解決了我原來的問題(痛苦),但想知道如果有一個更好的解決方案的具體文本子元素的父元素(jQuery的必須有一個更好的方式來做到這一點)。我與嵌套表(的SharePoint)的工作,並試圖選擇其中一個子細胞中含有特定文本行。我已經做了一個簡化的例子下面(也是在jsFiddle在這裏:http://jsfiddle.net/tpZyn/6/)如何選擇包含使用jQuery
在這個例子中,我試圖添加類「紅色行」的單元格行包含文本「(紅色)」(請記住,我的最終目標是,選擇所需的行...把他們的紅色只是表明我選擇他們)的方式,但所有的選擇我已經試過落得選擇不是更所需的行。最後我只能說做了什麼,我需要做的過濾功能,但似乎有點尷尬。似乎應該有更好的方法。
<style>
.red-row {
background-color: #FF0000;
}
</style>
<script>
$(document).ready(function() {
//$('td:contains("(red)")').parent("tr:first").addClass('red-row');
//$('td>:contains("(red)")').parent().addClass('red-row');
$('td').filter(function(){var bob = $(this).text().indexOf("(red)"); return (bob > -1 && bob < 10);}).parent().addClass('red-row');
});
</script>
<table>
<tbody>
<tr>
<td colspan="2">
<h1>My Header</h1>
</td>
</tr>
<tr>
<table>
<tbody>
<tr>
<td>
<h2>Left Column</h2>
</td>
<td>
<h2>Right Column</h2>
</td>
</tr>
<tr>
<td>
<table>
<tbody>
<tr>
<td>(red) Apple</td>
<td>$3</td>
</tr>
<tr>
<td>(yellow) Banana</td>
<td>$2</td>
</tr>
<tr>
<td>(yellow) Lemon</td>
<td>$1</td>
</tr>
<tr>
<td>(red) Cherry</td>
<td>$2</td>
</tr>
<tr>
<td>(yellow) Quince</td>
<td>$3</td>
</tr>
<tr>
<td>(green) Apple</td>
<td>$4</td>
</tr>
</tbody>
</table>
</td>
<td>
<p>Some other content</p>
</td>
</tr>
</tbody>
</table>
</tr>
</tbody>
</table>
啊,謝謝你教我關於 「:有」 法。很好的解決方案。非常感謝你。 – JeffOnWire 2013-05-09 23:05:48