繁体   English   中英

jQuery和.parent()

[英]Jquery and .parent()

给定以下标记和JS,为什么第一个语句起作用而第二个语句不能起作用?

jQuery的

$('.selector').change(function () {
  // does work
  $(this).parent(".controls").after( "<div class=\"control-group\">Test</div>" );

  // doesn't work
  $(this).parent(".control-group").after( "<div class=\"control-group\">Test</div>" );
}

的HTML

<div class="control-group">
  <label class="control-label" for="description">Section Type</label>
  <div class="controls">
    <select class="selector">
      // options
    </select>
  </div>
</div>

您应该使用:

  • .closest() ,它仅为您提供与选择器匹配的第一个元素(从当前选定的元素开始),或者
  • .parents()为您提供与该选择器匹配的所有父项(从当前选定元素的父项开始)。

.parent()方法仅在DOM树上移动单个级别

呸! 我应该有RTFM!

.parents()和.parent()方法类似,不同之处在于后者仅在DOM树上移动单个级别

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM