0

我有一组 div 元素。我称它们为 di1、di2、di3,但可能还有更多。

实际上,我用这段代码向他们展示了:

$("#elenco_elimina_gruppo").find("div.di1").show();
$("#elenco_elimina_gruppo").find("div.di2").show();
$("#elenco_elimina_gruppo").find("div.di3").show();

我想使用每个jQuery的功能。你能帮助我吗?

4

5 回答 5

2

你可以只使用$("#elenco_elimina_gruppo div").show();

于 2012-08-21T07:47:55.207 回答
1

如果只是三个 div,则可以使用多重选择器

$("#elenco_elimina_gruppo").find(".di1, .di2, .di3").show();
于 2012-08-21T07:47:53.983 回答
0

假设您想要执行更多操作,而不仅仅是显示元素,这里是如何使用.each()

$("#elenco_elimina_gruppo div").each(function(index) {
    var currentClassName = $(this).attr("class");
    if (currentClassName.length > 2 && currentClassName.substr(0, 2) == "di") {
        $(this).show();
        //you can do more actions here...
    }
});

​现场测试用例

如果您只想显示它们,则无需.each()使用以下.filter()方法:

$("#elenco_elimina_gruppo div").filter(function() {
    var currentClassName = $(this).attr("class");
    return (currentClassName.length > 2 && currentClassName.substr(0, 2) == "di");
}).show();

现场测试用例

于 2012-08-21T08:15:18.153 回答
0

你可以使用类似的东西 -

$("#elenco_elimina_gruppo").children().each(function() {
    $(this).show();                    
});

在此处查看示例 - http://jsfiddle.net/nonocut/pNyuT/2/

于 2012-08-21T08:16:59.870 回答
0

这是一个 JSFiddle和我在下面显示的代码 每个函数都非常简单,例如

$.each( ["di1","di2","di3"], function(item, index) {
     $("#elenco_elimina_gruppo div." + item ).show();
});

你也可以像这样使用它

$.each( $("#elenco_elimina_gruppo").find("div.di1,div.di2,div.di3"), function(item, index) {
     $(item).show();
});

有很多方法可以做你所追求的,这只是一个品味问题。我更喜欢 Speransky Danil 的回答,并在所有 div 上添加一个通用类,但这确实是您的选择。为了您的方便,我添加了一个JSFiddle

于 2012-08-21T08:21:39.727 回答