首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从子元素文本值向父类添加类?jQuery

如何从子元素文本值向父类添加类?jQuery
EN

Stack Overflow用户
提问于 2015-10-20 07:39:23
回答 2查看 716关注 0票数 1

我有一个包含子元素的列表。我想将. parent boxcolor的值添加到父li中。

代码语言:javascript
复制
<ul class="course-list">
    <li>

     <div class="course-content">
      <p class="post-meta post-meta-level">Level 2</p>
      <p class="post-meta post-meta-boxcolor">orange</p>
     </div>

    </li>

    <li>

     <div class="course-content">
      <p class="post-meta post-meta-level">Level 2</p>
      <p class="post-meta post-meta-boxcolor">red</p>
     </div>

    </li>

    <li>

     <div class="course-content">
      <p class="post-meta post-meta-level">Level 2</p>
      <p class="post-meta post-meta-boxcolor">lightblue</p>
     </div>

    </li>


</ul>

如何根据class=的“后元盒颜色”文本或值向父li添加类。

我想要的结果是:

代码语言:javascript
复制
<ul class="course-list">
    <li class="orange">

     <div class="course-content">
      <p class="post-meta post-meta-level">Level 2</p>
      <p class="post-meta post-meta-boxcolor">orange</p>
     </div>

    </li>

    <li class="red">

     <div class="course-content">
      <p class="post-meta post-meta-level">Level 2</p>
      <p class="post-meta post-meta-boxcolor">red</p>
     </div>

    </li>

    <li class="lightblue">

     <div class="course-content">
      <p class="post-meta post-meta-level">Level 2</p>
      <p class="post-meta post-meta-boxcolor">lightblue</p>
     </div>

    </li>


</ul>

谢谢你的帮忙!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-10-20 07:42:11

可以使用带有回调的addClass方法作为参数,如

代码语言:javascript
复制
$('.course-list li').addClass(function() {
  return $(this).find('.post-meta-boxcolor').text()
})
代码语言:javascript
复制
.orange {
  color: orange;
}
.red {
  color: red;
}
.lightblue {
  color: lightblue;
}
代码语言:javascript
复制
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul class="course-list">
  <li>

    <div class="course-content">
      <p class="post-meta post-meta-level">Level 2</p>
      <p class="post-meta post-meta-boxcolor">orange</p>
    </div>

  </li>

  <li>

    <div class="course-content">
      <p class="post-meta post-meta-level">Level 2</p>
      <p class="post-meta post-meta-boxcolor">red</p>
    </div>

  </li>

  <li>

    <div class="course-content">
      <p class="post-meta post-meta-level">Level 2</p>
      <p class="post-meta post-meta-boxcolor">lightblue</p>
    </div>

  </li>


</ul>

票数 3
EN

Stack Overflow用户

发布于 2015-10-20 07:43:12

您可以使用:

代码语言:javascript
复制
$('.course-list li').addClass(function(){
     return $(this).find('.post-meta-boxcolor').text().replace(/\s/g, '');
});
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33230721

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档