0

我有一张桌子#sortable-categories 在一些 tr 中我有data-order="something"(1,2,3..)。

我想全选。尝试了一切,但语法不正确

for(i = 1;i<=count_ordered;i++){
        $("#sortable-categories tr [data-order="+i+"]").hide();
    }

你能帮我吗:)

4

4 回答 4

2

如果data-order属性是<tr>元素的属性,则:

$("#sortable-categories tr[data-order]").hide();

它将隐藏<tr>表中具有data-order属性的所有元素。

注意:对于.hide()方法,顺序没有任何意义。

于 2013-07-04T09:16:17.393 回答
1

跟进我的评论,您的问题可能是 TR 和 [:

for(i = 1;i<=count_ordered;i++){
    $("#sortable-categories tr[data-order="+i+"]").hide();
}
于 2013-07-04T09:17:19.100 回答
0

非常愚蠢... tr 和 [data-order 必须没有空格。$("#sortable-categories tr[data-order="+i+"]").hide();

于 2013-07-04T09:18:19.083 回答
0

格式是htmlelement[attribute="value"]这样的。

我为 jQuery 使用了单引号,只是为了让属性选择器更清晰一些:

for(i = 1; i <= count_ordered; i++) {
    $('#sortable-categories tr[data-order="'+i+'"]').hide();
}

如您所见,单引号对字符串进行转义,因此您可以连接变量,而双引号将成为 jQuery 使用的字符串的一部分。

如果要查找包含值且不完全匹配的属性,则格式为:

htmlelement[attribute*="value"]
于 2013-07-04T09:22:40.333 回答