【发布时间】:2017-03-01 23:14:47
【问题描述】:
如果 td 内的图像 src 为空,我想隐藏包含图像的 td。
我尝试了以下方法,但它会隐藏的不仅仅是我试图定位的 td:
$('td').each(function() {
if($(this).find('img').attr('src') == "null"){
$(this).css('display', 'none');
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table>
<tbody>
<tr>
<td>
<p class="centered">
<label class="wrapable">
<img src="null">
<input name="test" value="1" type="radio">
</label>
</p>
</td>
<td>
<p class="centered">
<label class="wrapable">
<img src="null">
<input name="test" value="1" type="radio">
</label>
</p>
</td>
<td>
<p class="centered">
<label class="wrapable">
<img src="null">
<input name="test" value="1" type="radio">
</label>
</p>
</td>
<td>
<p class="centered">
<label class="wrapable">
<img src="http://lorempixel.com/100/100">
<input name="test" value="1" type="radio">
</label>
</p>
</td>
</tr>
<tbody>
</table>
任何帮助将不胜感激,仍在学习:)
【问题讨论】:
-
你确定它不起作用吗?看起来确实如此。
-
"它不仅会隐藏我试图定位的 td:"。那它还隐藏了什么?在我看来它应该可以工作。
-
注意可以简化成
$('img[src="null"]').closest("td").hide(); -
此表嵌套在另一个表中,因此它也隐藏了包含的 td。
-
然后使用 Denys 的建议;另外:为什么问题中没有那个细节?您能否edit 将其包含在内,因为它肯定与问题相关。
标签: javascript jquery