jquery遍历之parent()和parents()的区别及parentsUntil()方(2)


//删除选中日志
$(".delcheckbox").click(function(){
    var str='';
    $(".tab input[name=checkbox]:checked").each(function(){
        str+=$(this).val()+',';
    });
    str=str.substring(0,str.length-1);
    if(chk_Batch_PKEY(str)){
        art.dialog.confirm('你确认删除选中的日志吗?',function(){
            $.post("myRun/managerlog_del.php",{id:str},function(tips){
                if(tips=='ok'){
                    art.dialog.through({title:'信息',icon:'face-smile',content:'删除成功',ok:function(){art.dialog.close();location.reload();}});
                }else{
                    art.dialog.tips('删除失败');
                }
            });
            return true;
        });
    }else{
        art.dialog.through({title:'信息',icon:'face-sad',content:'请选择删除的日志',ok:function(){art.dialog.close();}});
    }
}).addClass("pointer");


//del event
$(".del").bind("click",function(event){
    var _tmpQuery=$(this);
    var id=$("input[name='id']",$(this).parents("form:first")).attr("value");
    art.dialog.confirm('你确认删除该日志吗?',function(){
        $.post("myRun/managerlog_del.php",{id:id},function(tips){
            if(tips=='ok'){
                art.dialog.tips('成功删除');
                _tmpQuery.parents('tr:first').hide();
            }else{
                art.dialog.tips(tips,5);
            }
        });
        return true;
    });
});


涉及到的知识点:

var id=$("input[name='id']",$(this).parents("form:first")).attr("value");

参考文献:
parent():

parents():


parentsUntil() 方法

定义:parentsUntil() 获得当前匹配元素集合中每个元素的祖先元素,直到(但不包括)被选择器、DOM 节点或 jQuery 对象匹配的元素。

其实,parentsUntil()方法,以及nextUntil()方法、prevUntil()方法,原理一样。唯一不同的是nextUntil()是往下,prevUntil()是往上(同辈元素),parentsUntil()也是往上(找祖先元素)

下面看一个例子:

复制代码 代码如下:


<!DOCTYPE html>
<html>
<head>
  <script type="text/javascript" src="https://www.jb51.net/jquery/jquery.js"></script>
</head>

<body>
<ul>
  <li>I</li>
  <li>II
    <ul>
      <li>A</li>
      <li>B
        <ul>
          <li>1</li>
          <li>2</li>
          <li>3</li>
        </ul>
      </li>
      <li>C</li>
    </ul>
  </li>
  <li>III</li>
</ul>

<script>
$("li.item-a").parentsUntil(".level-1").css("background-color", "red");

$("li.item-2").parentsUntil( $("ul.level-1"), ".yes"  )
  .css("border", "3px solid blue");
</script>

</body>


得到结果如下:

jquery遍历之parent()和parents()的区别及parentsUntil()方



分析:

复制代码 代码如下:


$("li.item-a").parentsUntil(".level-1").css("background-color", "red");


复制代码 代码如下:

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wdwfws.html