2011-03-09 56 views
1

继承人我的审判代码,这是它认为是错误的。如何用勾选的复选框隐藏所有tr?

$('#findtable').find('[name="scripts[]"]:checked').attr('#removed').hide(); 

其中#findtable是表的ID,#removed是TR

+0

你为什么要调用'.attr'? – SLaks 2011-03-09 19:08:01

+0

你可以展示你的HTML代码的样本吗? – mVChr 2011-03-09 19:08:18

+0

看到你正在处理的一些html可能会有所帮助。 – Charlino 2011-03-09 19:08:34

回答

2
$('#findtable').find('input:checkbox:checked').closest('tr').hide(); 

这显然假定有每行只有一个复选框的ID。您应该对选择器更具体。可能也是类别名称

+0

这里是你的一个小提琴(当你已经回答时,我正在制作):http://jsfiddle.net/2Wvqr/ – mVChr 2011-03-09 19:14:05

+0

@mVChr:哈哈..我只是在创造小提琴。感谢:) – jAndy 2011-03-09 19:18:49

0

我创建的样本与选择选中的复选框: 总之,你就可以使用这样的代码:

$("form input:checkbox:checked") 

这里是快速example

2

就像总是使用jQuery,有不止一种方法给猫皮。您可以使用:has()选择器。 http://api.jquery.com/has-selector/

$('#findtable tr:has(input:checkbox:checked)').hide() 
+0

+1为一个优雅的解决方案,正是问题所要求的(“隐藏所有tr与选中的复选框”)。 – 2011-03-09 22:03:07