你如何在Jquery中选择元素的后代?

时间:2016-02-25 22:12:35

标签: jquery

我有几个带有textareas的div设置为隐藏显示。当其中一个div通过按钮点击切换时,我希望切换它们中的任何内容(textareas),因为只有容器div切换,而其中的所有内容都被隐藏。这就是我想要发生的事情:

 $("#btn").click(function() {
    $("#specificDiv", "#specificDiv#textareaID").toggle();
});

 $("#btn").click(function() {
    $("#specificDiv", "#specificDiv textarea/allDescendants").toggle();
});

遵循CSS选择器逻辑的想法不起作用。

1 个答案:

答案 0 :(得分:1)

您不应将包含在引号中的每个选择器分开。相反,它们应该以逗号分隔,但所有内容都用引号括起来:

查找textarea的所有#specificDiv个后代:

$("#specificDiv, #specificDiv textarea").toggle();

或者只找到textarea的直接#specificDiv个孩子:

$("#specificDiv, #specificDiv > textarea").toggle();

您也可以分别使用.children().find()来查找直接后代或任何后代:

$("#specificDiv").toggle();
$("#specificDiv").find("textarea").toggle();