我的jquery循环遍历所有表
我想使用class =“cbox”隐藏所有跨度以及当前表中的所有复选框 但我的代码不起作用。
var table_ids = new Array();
$('.sizetable')
.each(function(e){
tableid = $(this).attr('id');
//$msg = tableid;
//alert($msg); This alerts the correct id
$( "#" + tableid + " .cbox").hide();
$( "#" + tableid + " input:checkbox").hide();
};
这是jsfiddle http://www.jsfiddle.net/tommyd/Br42j/
答案 0 :(得分:2)
存在语法错误,您缺少关闭')'。 所以将代码更改为:
var table_ids = new Array();
$('.sizetable').each(function(e){
tableid = $(this).attr('id');
//$msg = tableid;
//alert($msg); This alerts the correct id
$( "#" + tableid + " .cbox").hide();
$( "#" + tableid + " input:checkbox").hide();
});
检查下面的代码(更改选择器使其快一点):
var table_ids = new Array();
$('.sizetable span.cbox, .sizetable input:checkbox').hide();
编辑:在fiddle.net http://www.jsfiddle.net/Br42j/7/查看此帖子,我将sizetable类添加到表中并添加了缺失的内容 对于优化版本,请检查: http://www.jsfiddle.net/Br42j/8/
答案 1 :(得分:1)
只需使用$('.sizetable .cbox, .sizetable input:checkbox').hide()
即可。按ID选择更快,但您已经按类选择获取ID,也可以从那里开始隐藏所有.cbox
和input:checkbox