+ -
当前位置:首页 → 问答吧 → 求一个JQUERY对于统计值的写法

求一个JQUERY对于统计值的写法

时间:2009-09-16

来源:互联网

复制代码
  1. <body>
  2.   <ul id="list" class="listcate">
  3.     <li>
  4.         <span class="">aaa(100)</span>
  5.         <ul>
  6.             <li><span>bbb(100)</span></li>
  7.             <li><span>ccc(100)</span>
  8.                 <ul>
  9.                     <li><span>ddd(100)</span></li>
  10.                 </ul>
  11.             </li>
  12.         </ul>
  13.     </li>
  14.     <li>
  15.         <span class="">eee(100)</span>
  16.         <ul>
  17.             <li><span>fff(100)</span></li>
  18.             <li><span>ggg(100)</span>
  19.                 <ul>
  20.                     <li><span>hhh(100)</span></li>
  21.                 </ul>
  22.             </li>
  23.         </ul>
  24.     </li>
  25.   </ul>
  26. </body>


想求出所有包含ul元素的li元素(子元素)中的括号中的数字累加的这个外层li元素的span里面
比如
结果应该是
eee(100)(400)
fff(100)
ggg(100)(200)
hhh(100)
第二个括号是统计本身以及其子元素旁边的数量之和

要实现这样的效果的思路应该是怎么样的呢?

作者: siemenliu   发布时间: 2009-09-16

复制代码
  1.     $(function(){
  2.         $('li').each(function(){
  3.           var n=0;
  4.           $(this).find('ul span').each(function(){
  5.              try{
  6.                  n+=parseInt(/\d+/.exec($(this).html())[0],10);
  7.              }catch(e){}
  8.           });
  9.           if(n>0){
  10.               var c=$(this).find('span:first');
  11.               var ch=c.html();
  12.               n+=parseInt(/\d+/.exec(ch),10);
  13.               c.html(ch+"("+n+")");
  14.           }
  15.         });
  16.     });


不知道你整这种东西干嘛

作者: netwjx   发布时间: 2009-09-17

相关阅读 更多