jQuery:find选择器只能使用ID而不是类?

时间:2010-04-26 13:28:04

标签: jquery css

使用类选择器在jQuery中使用“find”方法吗?

例如:

var tagsDiv = $(".node-form .taxonomy-super-select-checkboxes").find("div.fieldset-wrapper");

不起作用。但

var tagsDiv = $(".node-form .taxonomy-super-select-checkboxes").find("div#edit-taxonomy-tags-1-wrapper");

的工作原理。这是html代码:

...

<fieldset class=" collapsible">
   <legend class="collapse-processed">
       <a href="#">Tags
          <span class="form-required" title="This field is required.">*</span>
       </a>
  </legend>
  <div class="fieldset-wrapper">
     <div class="form-item" id="edit-taxonomy-tags-1-wrapper">
        <label for="edit-taxonomy-tags-1">Enter New Tags: </label>
     </div>
  </div>
</fieldset>

...

感谢

3 个答案:

答案 0 :(得分:1)

您的问题的答案是肯定的。 Find方法适用于所有有效的选择器。

选择器$(".node-form .taxonomy-super-select-checkboxes")返回的元素集必须包含一个或多个与 "div#edit-taxonomy-tags-1-wrapper"匹配的子元素,但包含与"div.fieldset-wrapper"匹配的零子元素。

如果没有看到您发布的文档片段的完整上下文,我就可以这么说了。

答案 1 :(得分:0)

.find方法支持所有jQuery选择器,包括类选择器。

你可能有不同的问题 .taxonomy-super-select-checkboxes在哪里?

答案 2 :(得分:0)

我认为您显示的HTML位于.node-form .taxonomy-super-select-checkboxes内,无论它是什么。

div.fieldset-wrapper和div#edit-taxonomy-tags-1-wrapper是你的html中的两个不同的div,所以如果你期望两者都有相同的输出那么其中一个就不会做出预期的结果。但这并不意味着发现是错误的。

您为两个不同的元素提供了选择器