Jquery删除父级或父级,直到特定的类名

时间:2017-05-13 10:54:27

标签: php jquery

我正在尝试删除像下面这样的元素的主要父项,我想删除名为&#34的类;以及#34;,但是我无法直接将其作为目标,因为它在PHP内部执行while循环,所以如果我说$('.well').remove()所有带有类名的元素" well"将被删除。

<div class='well'>   
  <div class='container'>
     <div class='save-cl'>
         <button class='accept-call'> Accept</button>
      </div>
   </div>
</div>

这是我的jquery,当我使用parent时,正在删除类.save-cl

   $(document).on('click','.accept-call',function(){

           console.log("Accept was called");

             $(this).parent().remove();

});

当我使用父母时,删除所有元素甚至HTML,所以一切都是白色的,有没有办法调用$(this).parents但是限制它直到特定的类。

4 个答案:

答案 0 :(得分:1)

使用closest()方法获取与选择器或元素匹配的最近祖先。

$(this).closest('.well').remove();

答案 1 :(得分:0)

removeClass()&amp; for remove element使用remove()

&#13;
&#13;
 

$(document).on('click','.accept-call',function(){

   console.log("Accept was called");
   $(this).parents(".container").parent().removeClass("well"); // for removeClass
 // $(this).parents(".container").parent().remove();  //for remove elelment

});
&#13;
.well{background:red;}
&#13;
   

 <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
    <div class='well'>   
      <div class='container'>
         <div class='save-cl'>
             <button class='accept-call'> Accept</button>
          </div>
       </div>
    </div>
&#13;
&#13;
&#13;

答案 2 :(得分:0)

尝试此代码

var cnt = $(".well").contents();
$(".well").replaceWith(cnt);

答案 3 :(得分:0)

使用jQuery,您可以使用 .parents(selector)来定位想要的(大)父级。

$(document).on('click','.accept-call',function(){
    console.log("Accept was called");
    $(this).parents('.well').remove();
 });

它不会触及另一个&#39;以及&#39;类。如果要删除该类而不是整个div,则可以使用 .removeClass(&#39; .well&#39;)而不是 .remove()