jquery查找父元素、子元素(个人经验总结)


Posted in Javascript onApril 09, 2014

使用js或者jquery查找父元素、子元素经常遇到。可是用起来总容易混淆,这里统一总结了一下,以后用起来相信会方便好多

这里jquery向上查找父元素 用到的方法:closest() parents() parent()

向下查找子元素 用到的方法:find() children()

js用的是 children[] 属性

html代码

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 
<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
<title>jquery查找父元素子元素</title> 
</head> 
<body> 

<div class="div1" id="div1" name="mydiv"> 
<p>段落1 查找父元素</p> 
<table id="table1"> 
<tbody id="tbody1"> 
<tr> 
<td id="mytd1">11closest()向上查找最近的元素(返回零个或一个元素的 jQuery 对象)</td> 
</tr> 
<tr id="mytr2"> 
<td id="mytd2">21parent()方法</td> 
</tr> 
<tr> 
<td id="mytd3">31parent("选择器")方法</td> 
</tr> 
</tbody> 
</table> 
</div> 

<hr> 
<div id="div2" style="border-bottom :5px;" name="mydiv"> 
<p>段落2 查找子元素</p> 
<table id="table2"> 
<tbody> 
<tr> 
<td id="sectd1">查找table2的td find()方法</td> 
</tr> 
<tr id="sectr2"> 
<td id="sectd2">查找table2的td children()方法</td> 
</tr> 
<tr> 
<td id="sectd3">js的children[]属性来查找</td> 
</tr> 
</tbody> 
<tbody> 
<tr> 
<td>tbody2222</td> 
</tr> 
</tbody> 
</table> 
</div> 
</body> 
</html>

js代码:
<script type="text/javascript" src="./js/jquery-1.7.2.js"></script> 
<script> $(function(){ 
/************ 查找父元素 *************/ 
//closest()方法 
$("#mytd1").bind("click",function(){ 
//alert($(this).html()); 
alert($(this).closest("table").attr("id")); //table1而不是table0 
//alert($(this).closest("table").html()); 
}); 
//parent()方法 
$("#mytd2").bind("click",function(){ 
//alert($(this).html()); //$(this).html()是21 (this).attr("id")是mytd2 
alert($(this).parent().parent().parent().attr("id")); 
//.parent()是tr 第二个.parent是tbody。即使没有tbody标签,找到的也是tbody 第三个.parent()是table 
//document.write("第一个parent的id:" + $(this).parent().attr("id") + "。 第二个parent的id是:"+$(this).parent().parent().attr("id") + "。 第三个parent的id是:"+$(this).parent().parent().parent().attr("id")); 
}); 
//parent("选择器") parents("选择器") 
$("#mytd3").bind("click",function(){ 
$("p").parent("#div1").css("background", "yellow");//这里换成了p标签。不知道为什么用this找不到元素 
//alert($(this).parent("#div").attr("id"));//undefined 
alert($(this).parents("div").attr("id"));//div1 注意一个parent parents 
}); 

/************ 查找子元素 *************/ 
//查找table2的td元素 find() 
$("#sectd1").bind("click",function(){ 
alert($("#table2").find("td").length); 
/* $("#table2").find("td").each(function(index,element){ 
alert($(element).text()); 
}); */ 
}); 
//children() 
$("#sectd2").bind("click",function(){ 
var table = $("#table2"); 
alert($("#table2").children().children().children("td[id='sectd2']").html()); 
//children() 是 tbody children()是 tr children("td[id='sectd2']")是td 
}); 

// js的 children[] 
$("#sectd3").bind("click",function(){ 
var table = document.getElementById("table2"); 
alert(table.children[0].children[2].children[0].innerHTML); 
//children[0] 是 tbody children[2]是 第三行的tr children[0]是td 
}); 
}); 
</script>
Javascript 相关文章推荐
escape、encodeURI、encodeURIComponent等方法的区别比较
Dec 27 Javascript
window.showModalDialog参数传递中含有特殊字符的处理方法
Jun 06 Javascript
jquery放大镜效果超漂亮噢
Nov 15 Javascript
Jquery操作radio的简单实例
Jan 06 Javascript
JSON格式化输出
Nov 10 Javascript
分享一个插件实现水珠自动下落效果
Jun 01 Javascript
javascript实现一个网页加载进度loading
Jan 04 Javascript
原生js实现电商侧边导航效果
Jan 19 Javascript
bootstrap IE8 兼容性处理
Mar 22 Javascript
vue2.0获取自定义属性的值
Mar 28 Javascript
js实现控制文件拖拽并获取拖拽内容功能
Feb 17 Javascript
Angular CLI在Angular项目中如何使用scss详解
Apr 10 Javascript
js控制iframe的高度/宽度让其自适应内容
Apr 09 #Javascript
JS、DOM和JQuery之间的关系示例分析
Apr 09 #Javascript
jQuery遍历Table应用示例
Apr 09 #Javascript
通过url查找a元素并点击
Apr 09 #Javascript
js数组方法扩展实现数组统计函数
Apr 09 #Javascript
jquery实现pager控件示例
Apr 09 #Javascript
模拟用户点击弹出新页面不会被浏览器拦截
Apr 08 #Javascript
You might like
Win2003服务器安全加固设置--进一步提高服务器安全性
2007/05/23 PHP
一个PHP并发访问实例代码
2012/09/06 PHP
php使用pdo连接mssql server数据库实例
2014/12/25 PHP
php判断文件夹是否存在不存在则创建
2015/04/09 PHP
PHP魔术方法使用方法汇总
2016/02/14 PHP
PHP的自定义模板引擎
2017/03/24 PHP
ExtJS TabPanel beforeremove beforeclose使用说明
2010/03/31 Javascript
JQuery学习笔录 简单的JQuery
2012/04/09 Javascript
jQuery实现的图片分组切换焦点图插件
2015/01/06 Javascript
JavaScript 中调用 Kotlin 方法实例详解
2017/06/09 Javascript
Angular客户端请求Rest服务跨域问题的解决方法
2017/09/19 Javascript
详解JS转换数值函数Number()、parseInt()、parseFloat()
2018/08/24 Javascript
vue项目打包部署到服务器的方法示例
2018/08/27 Javascript
vue移动端微信授权登录插件封装的实例
2018/08/28 Javascript
vue router 组件的高级应用实例代码
2019/04/08 Javascript
在python的类中动态添加属性与生成对象
2016/09/17 Python
Python的CGIHTTPServer交互实现详解
2018/02/08 Python
Python实现的根据IP地址计算子网掩码位数功能示例
2018/05/23 Python
python 读取文件并替换字段的实例
2018/07/12 Python
详解Django解决ajax跨域访问问题
2018/08/24 Python
Python读取txt内容写入xls格式excel中的方法
2018/10/11 Python
python RabbitMQ 使用详细介绍(小结)
2018/11/08 Python
python如何实现数据的线性拟合
2019/07/19 Python
python3调用windows dos命令的例子
2019/08/14 Python
Python matplotlib生成图片背景透明的示例代码
2019/08/30 Python
Python脚本如何在bilibili中查找弹幕发送者
2020/06/04 Python
Dockers美国官方网站:卡其裤、男士服装、鞋及配件
2016/11/22 全球购物
英国豪华家具和家居用品购物网站:Teddy Beau
2020/10/12 全球购物
中专生职业生涯规划书范文
2013/12/29 职场文书
大学生村官事迹材料
2014/01/21 职场文书
总经理司机职责
2014/02/02 职场文书
财务信息服务专业自荐书范文
2014/02/08 职场文书
书香校园建设方案
2014/05/02 职场文书
贪污检举信范文
2015/03/02 职场文书
七年级写作指导之游记作文
2019/10/07 职场文书
一文彻底理解js原生语法prototype,__proto__和constructor
2021/10/24 Javascript