zoukankan      html  css  js  c++  java
  • jquery中的each

    $.each(Array, function(i, value) {       

    this;                                    //this指向当前元素      

     i;                                       //i表示Array当前下标      

     value;                                //value表示Array当前元素 

     }); 

    each处理一维数组

    var arr1 = [ "aaa", "bbb", "ccc" ];      
      $.each(arr1, function(i,val){      
          alert(i);   
          alert(val);
      });   
    
    alert(i)将输出      0,1,2
    alert(val)将输出   aaa,bbb,ccc
    

     each处理二维数组 

    var arr2 = [['a', 'aa', 'aaa'], ['b', 'bb', 'bbb'], ['c', 'cc', 'ccc']]      
      $.each(arr, function(i, item){      
          alert(i);   
          alert(item);      
      });  
    
    arr2为一个二维数组,item相当于取这二维数组中的每一个数组。
    item[0]相对于取每一个一维数组里的第一个值   
    alert(i)将输出为0,1,2,因为这二维数组含有3个数组元素
    alert(item)将输出为  ['a', 'aa', 'aaa'],['b', 'bb', 'bbb'],['c', 'cc', 'ccc']
    

     处理二维数组

    var arr = [['a', 'aa', 'aaa'], ['b', 'bb', 'bbb'], ['c', 'cc', 'ccc']]      
       $.each(arr, function(i, item){      
            $.each(item,function(j,val){
                alert(j);
                alert(val);
         }); 
    });    
    
     alert(j)将输出为0,1,2,0,1,2,0,1,2
    
     alert(val)将输出为a,aa,aaa,b,bb,bbb,c,cc,ccc
    

     each处理json数据

    var obj = { one:1, two:2, three:3};      
       each(obj, function(key, val) {      
            alert(key);   
            alert(val);      
       });   
    
    这里alert(key)将输出one two three
    alert(val)将输出one,1,two,2,three,3
    这边为何key不是数字而是属性呢,因为json格式内是一组无序的属性-值,既然无序,又何来数字呢。
    而这个val等同于obj[key]
    

     处理json数组

    var comments=[
    
                                  {name:'xiaoming',msg:'我是好孩子'},
    
                                  {name:'xiaohong',msg:'我喜欢过唱歌'}                         
    
                                  ];
    
    $.each(comments,function(i,val){
    
                       alert(i);
    
            alert(val)
    
                       alert(val.name);
    
             })
    
    输出结果为:0,[object,objec],xiaoming,1, [object,objec],xiaohong
    

     ecah处理dom元素

    $.each($("input:hidden"), function(i,val){ 
    
         alert(val);
    
         alert(i);
    
         alert(val.name);
    
         alert(val.value);  
    
     }); 
    
    那么,alert(val)将输出[object HTMLInputElement],因为它是一个表单元素。  
    
    alert(i)将输出为0,1,2,3
    
    alert(val.name);将输出aaa,bbb,ccc,ddd,如果使用this.name将输出同样的结果
    
    alert(val.value);  将输出111,222,333,444,如果使用this.value将输出同样的结果
    

     $(selector).each(function(index,element))参数描述

    function(index,element) 必需。为每个匹配元素规定运行的函数。
    •index - 选择器的 index 位置
    •element - 当前的元素(也可使用 "this" 选择器

    <img/><img/>jQuery 代码:
    
    $("img").each(function(i){
            this.src = "test" + i + ".jpg";
    }); 
    
    结果:[ <img src="test0.jpg" />, <img src="test1.jpg" /> ] 
    
    $("button").click(function(){
          $("li").each(function(){
                    alert($(this).text())
          });
    }); 
    

     怎么跳出each

    返回 'false' 将停止循环 (就像在普通的循环中使用 'break')。
    返回 'true' 跳至下一个循环(就像在普通的循环中使用'continue')。 
    
  • 相关阅读:
    比较好的总结runtime
    开发证书详解
    删除数组中特定元素推荐做法
    pbxproj文件冲突解决办法
    svn不提交user文件
    c提高第六次课 文件读取
    c++函数指针
    c提高第五次作业
    c提高第四次作业
    c提高第四课
  • 原文地址:https://www.cnblogs.com/zhuiluoyu/p/4686613.html
Copyright © 2011-2022 走看看