我想从某些类中删除<a>标记。这是我的html:

<div class="my_class">
    <div class="sub_class">
        <p class="percent">0%</p>
    </div>
    <div>
        <div id="my_links_1">
            <p class="my_url"><a href="#">my link 1</a></p>
            <p class="my_url"><a href="#">my link 2</a></p>
        </div>
    </div>
    <div class="sub_class">
        <p class="percent">50%</p>
    </div>
    <div>
        <div id="my_links_2">
            <p class="my_url"><a href="#">my link 3</a></p>
            <p class="my_url"><a href="#">my link 4</a></p>
        </div>
    </div>
    <div class="sub_class">
        <p class="percent">50%</p>
    </div>
    <div>
        <div id="my_links_3">
            <p class="my_url"><a href="#">my link 5</a></p>
            <p class="my_url"><a href="#">my link 6</a></p>
        </div>
    </div>
    <div class="sub_class">
        <p class="percent">100%</p>
    </div>
    <div>
        <div id="my_links_4">
            <p class="my_url"><a href="#">my link 7</a></p>
            <p class="my_url"><a href="#">my link 8</a></p>
        </div>
    </div>
</div>

所以,我想删除所有的<a>标签,除了百分之五十。我试过这个代码,但是它删除了所有的<a>标记。
$.each($('.percent'), function (index, value) {
    var per = $(value).text();
    if(per != "50%"){
        $(".my_url").find("a").contents().unwrap();
    }
});

最佳答案

为此,您需要使用适当的selector:请检查下面的代码片段

$('.percent').each(function() {
  var per = $(this).text();
  if (per != "50%") {
    $(this).parent('div').next().find(".my_url").find("a").contents().unwrap();
  }
});

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="my_class">
  <div class="sub_class">
    <p class="percent">0%</p>
  </div>
  <div>
    <div id="my_links_1">
      <p class="my_url"><a href="#">my link 1</a>
      </p>
      <p class="my_url"><a href="#">my link 2</a>
      </p>
    </div>
  </div>
  <div class="sub_class">
    <p class="percent">50%</p>
  </div>
  <div>
    <div id="my_links_2">
      <p class="my_url"><a href="#">my link 3</a>
      </p>
      <p class="my_url"><a href="#">my link 4</a>
      </p>
    </div>
  </div>
  <div class="sub_class">
    <p class="percent">50%</p>
  </div>
  <div>
    <div id="my_links_3">
      <p class="my_url"><a href="#">my link 5</a>
      </p>
      <p class="my_url"><a href="#">my link 6</a>
      </p>
    </div>
  </div>
  <div class="sub_class">
    <p class="percent">100%</p>
  </div>
  <div>
    <div id="my_links_4">
      <p class="my_url"><a href="#">my link 7</a>
      </p>
      <p class="my_url"><a href="#">my link 8</a>
      </p>
    </div>
  </div>
</div>

关于jquery - jQuery从某些子类中删除<a>标签,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36094255/

10-09 16:08
查看更多