jquery获取父元素以及操作包装集中的元素

原创 2013年12月04日 09:49:26

今天写了这样一段html代码


现在要选择所有name=‘auoteTimeCheck’并且被选中的check元素所在行的第四个td元素,即选中“未读”所在的td。选择元素的父元素,采用parent()方法,获取的是直接父节点,还用parents(selector)获取的是所有父元素(即祖先元素)可以给该方法传入一个选择器进行过滤,在这里只是获取了checkbox的父元素td,然后通过siblings()获取得到td的兄弟元素,它的兄弟元素有三个,即剩下的三个td,然后操作这个包装集(里面有三个td元素),使用eq(index)获取的是序列号是index的jquery元素,也可以通过get(index)获取包装集元素,但是返回的是html元素,不是jquery。

var checkedItem = $("input[name='quoteTimeCheck']:checked");

$.each(checkedItem, function(index, value) {
newsidsToPost[index]= $(value).val();
var stateItem = $(value).parent()
.siblings().eq(2).html();


if (stateItem == '已读') {
$.messager.alert('提示',
'选择的记录中含有已读的消息,请重新选择');
return;
}})

使用jquery获取父元素或父节点的方法

jquery获取父元素方法比较多,比如parent(),parents(),closest()这些都能帮你实现查找父元素或节点,下面我们来一一讲解:

先举个例子,

1.<ul class="parent1">

  2.<li><a href="#" id="item1">jquery获取父节点</a></li>
  3.<li><a href="#">jquery获取父元素</a></li>
  4.</ul>

 

我们的目的是通过 id 为 item1 的便签a取到 class 为 parent1 的ul元素,有以下几种方法:

1、parent([expr])

取得一个包含着所有匹配元素的唯一父元素的元素集合。

你可以使用可选的表达式来筛选。

代码如下

1.$('#item1').parent().parent('.parent1');

2、:parent

匹配含有子元素或者文本的元素

代码如下

 

  1.$('li:parent'); 

3、parents([expr])

取得一个包含着所有匹配元素的祖先元素的元素集合(不包含根元素)。可以通过一个可选的表达式进行筛选。

代码如下

   1.$('#items').parents('.parent1');

  4、closest([expr])

closest会首先检查当前元素是否匹配,如果匹配则直接返回元素本身。如果不匹配则向上查找父元素,一层一层往上,直到找到匹配选择器的元素。如果什么都没找到则返回一个空的jQuery对象。

closest和parents的主要区别是:1,前者从当前元素开始匹配寻找,后者从父元素开始匹配寻找;2,前者逐级向上查找,直到发现匹配的元素后 就停止了,后者一直向上查找直到根元素,然后把这些元素放进一个临时集合中,再用给定的选择器表达式去过滤;3,前者返回0或1个元素,后者可能包含0 个,1个,或者多个元素。

closest对于处理事件委派非常有用。

1.$('#items1').closest('.parent1');

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

使用jquery获取父元素或父节点的方法

原文网址:http://www.cnblogs.com/weixing/archive/2012/03/20/2407618.html jquery获取父元素方法比较多,比如parent()...

jQuery获取父元素节点的下标

jquery获取父元素方法比较多,比如parent(),parents(),closest()这些都能帮你实现查找父元素或节点,下面我们来一一讲解: 先举个例子: ...

jquery随记(DOM操作)---包装元素

************************************************************************************************* 通...
  • bzuld
  • bzuld
  • 2011年08月26日 14:29
  • 289

jQuery实战学习笔记(一)-选择要操作的元素和管理包装集

jQuery选择元素,包装集管理,方法链管理,普通js对象和包装集对象的转换
  • macanfa
  • macanfa
  • 2016年05月17日 15:24
  • 829

jQuery第二课 ——节点选择、元素创建与操作、包装对象、jq转原生js

15、节点的选择 (1).first() (2).last() (3).slice() 参数 :[开始位置 ,结束位置) 不包括结束位置(4).children(...
  • wstpa
  • wstpa
  • 2015年10月17日 10:35
  • 676

learning jQuery 学习笔记十二(+jQuery 1.4.1 API)-- DOM操作-基于命令改变页面 ----包装元素

注:本笔记内容摘自《jQuery基础教程》+ jQuery 1.4.1中文参考 包装元素 jQuery 1.4.1 API wrap() wrap(elem)...

解决Jquery easyui中dialog、window、panel三个组件拖动超出父元素界限问题

在网上查了一些 对于此问题的改动,发现在实际中都有一些问题(比如 有时候父元素取不到,父元素的width和height取不到),于是在此基础上做了修改,亲测可用。 /** * 针对panel ...
  • liaote
  • liaote
  • 2013年01月11日 11:03
  • 2279

jQuery实战:创建元素包装集,选择将被操作的元素

看完你能学到什么?1、利用基本CSS选择器 2、利用子选择器、容器选择器和特性选择器 3、通过位置选择 4、利用自定义jQuery选择器几乎使用任何jQuery方法的时候,我们必须做的第一件事,...

jquery之管理包装元素集合(利用关系获取包装集)

jquery之管理包装元素集合(利用关系获取包装集)
  • fhd001
  • fhd001
  • 2011年03月26日 19:28
  • 685
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:jquery获取父元素以及操作包装集中的元素
举报原因:
原因补充:

(最多只允许输入30个字)