那些年朋友劝,该知道的ASP.NET - jQuery查找HTML中某个节点并赋单击事件,同时取出节点中的值?
2012-11-15 15:57
351 查看
//以下有个菜单,实现取出<a>节点中的值取赋click事件。 <div id="menu"> <div class="has_childrenMain"> <span>第1章-认识jQuery</span> <a>1.1-JavaScript和JavaScript库</a> <a>1.2-加入jQuery</a> <a>1.3-编写简单jQuery代码</a> <a>1.4-jQuery对象和DOM对象</a> <a>1.5-解决jQuery和其它库的冲突</a> <a>1.6-jQuery开发工具和插件</a> <a>1.7-小结</a> </div> </div>
//在网上查啊,找啊….(此处省略N个小时), $( '.has_childrenMain' ).each( function ( i ) { $( this ).click( function () { var val = $( this ).find( 'a' ).eq( i ).text(); alert( val ); } ); } ); //好不容易找到了一段代码,试试了,只显示第0个值。“第1章-认识jQuery” , //无耐的很只能进入while(查找中…),没有找到不过想通了,修改了一下代码: $( '.has_childrenMain' ).find( 'a' ).each( function ( i ) { $( this ).click( function () { var val = $( this ).text(); alert( val ); } ); } );
//回头再看了一下第一段代码: $( '.has_childrenMain' ).each( //each只是找到1个或N个类为has_childrenMain的节点 $( this ).click( //这里的$( this )是==<div class="has_childrenMain"> var val = $( this ).find( 'a' ).eq( i ).text(); //在<div class="has_childrenMain">中去查找<a>那只能是找到第一个了,终于找到错误了
取代码进行了修改,本想说是重构的,想了算了吧
$( 'div.has_childrenMain>a' ).each( function ( i ) { $( this ).click( function () { var val = $( this ).text(); alert( val ); } ); } );
相关文章推荐
- 那些年朋友劝,该知道的ASP.NET -如何在HTML/后台,中调用另一个js文件中的方法
- 那些年朋友劝,该知道的ASP.NET - 自定义控件处理页面事件(控件与页面数据交互)的方法
- 那些年朋友劝,该知道的ASP.NET - 弹出对话框,如果是“询问”如何知道点击的是确定/否认?
- 那些年朋友劝,该知道的ASP.NET - 服务器端和客户端清除TextBox控件的值
- 那些年朋友劝,该知道的ASP.NET - 页面加载顺序
- ASP.NET DEMO 15: 同时支持行单击和双击事件的 GridView/DataGrid
- 那些年朋友劝,该知道的ASP.NET - Vs 有用的插件
- ASP.NET DEMO 15: 同时支持行单击和双击事件的 GridView/DataGrid
- 那些年朋友劝,该知道的ASP.NET -如何加密ASP.NET配置数据
- 那些年朋友劝,该知道的ASP.NET - XXX的重载均与委托“System.EventHandler”不匹配,(花了 2小时)
- ASP.NET DEMO 15: 同时支持行单击和双击事件的 GridView/DataGrid
- ASP.NET DEMO 15: 同时支持行单击和双击事件的 GridView/DataGrid
- ASP.NET DEMO 15: 同时支持行单击和双击事件的 GridView/DataGrid
- ASP.NET DEMO 15: 同时支持行单击和双击事件的 GridView/DataGrid
- ASP.NET DEMO 15: 同时支持行单击和双击事件的 GridView/DataGrid
- 那些年朋友劝,该知道的ASP.NET - XXX的重载均与委托“System.EventHandler”不匹配,(花了 2小时)
- ASP.NET DEMO 15: 同时支持行单击和双击事件的 GridView/DataGrid
- ASP.NET DEMO 15: 同时支持行单击和双击事件的 GridView/DataGrid
- asp.net 程序,单击按钮时 同时实现打开页面并处理值
- 【转】JQuery跨域请求 (转http://www.cnblogs.com/myaspnet/archive/2010/12/30/1922335.html)