2016-02-05 50 views
0

下面是我的代码片段,为了使细节更清晰,首先循环访问当前单击元素所具有的每个数据属性,获取内容并分割它每个“%”作为每个拆分内容的分隔符和循环。现在,我想要做的就是提醒已有内容和索引为'0'(你可以在'if'语句中看到,如果索引'0'然后提醒索引[0]值),但看起来不是工作甚至不通过所提供的if语句。任何想法,线索,建议,建议,请帮忙?无法从循环数据属性的内容获取索引的值

$(document).ready(function(){ 
 
    $("button").click(function(){ 
 
    $.each($(this).data(),function(index,value){ 
 
     if(index !== "plugin_ripples"){ 
 
      var classList = value.split("%"); 
 
      $.each(classList, function(index, item) { 
 
       alert("index: "+index+" index value: "+item); 
 
       if(index[0]){ 
 
        alert(index[0].item); 
 
       } 
 
      }); 
 
     } 
 
    }); 
 
    
 
    }); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 

 

 

 
<button data-name="test%jason%kayko" data-test="test 2">test</button>

+0

如果你只想要当指数为0,UR提醒if语句应该像如果(指数=== 0){ – blessenm

+0

@blessenm,有2'index'为每个回调处理程序都有相同名称的参数。 – Rayon

+0

是的,我可以做到这一点,但我试图寻找更好的方法。 –

回答

0

因为没有人给我什么我想要实现的问候了不同的方法,所以后来我创建了不同的方法为自己,以满足我的需求和要求,我确实是把它与数组挂钩,查看下面的代码片段。

$(document).ready(function(){ 
 
    $("button").click(function(){ 
 
    $.each($(this).data(),function(index,value){ 
 
     if(index !== "plugin_ripples"){ 
 
      var classList = value.split("%"); 
 
      var data_items = []; 
 
      $.each(classList, function(index, item) { 
 
       data_items.push(item); 
 
      }); 
 
      if(data_items[0] === "null"){ 
 
      alert(data_items[0]); 
 
      } 
 
     } 
 
    }); 
 
    
 
    }); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 

 

 

 
<button data-name="test%jason%kayko" data-test="test 2">test</button>