我有一个小桌子,我想用一些jQuery修改。我没有能力更改静态HTML上的类,所以这一切都需要通过jQuery来完成。我想看看class = x的td是否表示' 48小时保持'然后是td,其中class = y,只有在那个tr被改为Unavilable。我不知道如何排除不同tr中的内容。
<table>
<tr>
<td class="x">48 Hour Hold</td>
<td class="y">Available</td>
</tr>
<tr>
<td class="x">Reference Desk</td>
<td class="y">Available</td>
</tr>
</table>
$(document).ready(function(){
if($(".x:contains(48 Hour Hold)")){
$(".y:contains(Available)").text('Unavailable');
};
})
结果最终应如下所示:
<table>
<tr>
<td class="x">48 Hour Hold</td>
<td class="y">Unavailable</td>
</tr>
<tr>
<td class="x">Reference Desk</td>
<td class="y">Available</td>
</tr>
</table>
答案 0 :(得分:2)
您不需要if
条件,您只需选择包含给定字符串的所有.x
元素,然后修改text()
元素的next('.y')
,像这样:
$('.x:contains("48 Hour Hold")').next('.y').text('Unavailable');
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table>
<tr>
<td class="x">48 Hour Hold</td>
<td class="y">Available</td>
</tr>
<tr>
<td class="x">Reference Desk</td>
<td class="y">Available</td>
</tr>
<tr>
<td class="x">48 Hour Hold</td>
<td class="y">Available</td>
</tr>
</table>