我试图将一个类应用于子元素的父元素,如果条件为真但似乎无法使其工作。简而言之,我想检查表格中是否有一个数字为“0”的单元格并隐藏其父行。
我已经创建了一个基本的jsfiddle:http://jsfiddle.net/immbudden/YbZPE/3/
我放在一起的jquery片段:
if ($('#the_table>table>td:contains("0")').length === 1) {
$(this).parent("tr").addClass("hidden");
}
我还在学习jQuery和javascript,这可能是一件小事,但我似乎无法将其放在手上!
任何帮助都有很大的帮助,在此先感谢!
答案 0 :(得分:4)
$('td', '#the_table > table').each(function() {
if ($(this).text() === '0') {
$(this).parents("tr").addClass("hidden");
}
});
答案 1 :(得分:1)
使用浏览器的开发者工具!或Get Firebug。
加载该页面后,请在javscript控制台中尝试:
$('#the_table>table>td:contains("0")')
如果能给你
[ ]
然后它没有找到任何元素。然后你可以尝试将其分解,例如,看看是否有效:
$('#the_table>table>td')
继续取出并添加该表达式的位,直到它根据您的需要生成true
或false
。
答案 2 :(得分:1)
你可以这样做,
$('#the_table table td').filter( function (index) {
return $(this).text() == '0';
}).parent("tr").addClass("hidden");
答案 3 :(得分:1)
如果你想第一次使用eq(0),首先你需要得到细胞:
$cell = jQuery('#the_table tr td:eq(0)');
然后你必须把课程放在父行上:
$cell.parent("tr").addClass("hidden");
以下代码将执行此操作。
jQuery('#the_table tr td:eq(0)').parent("tr").addClass("hidden");