2014-11-25 46 views
-2

我有一個.each循環。對於每個元素的迭代,我希望將一個數組的內容添加到一個屬性值中。無法獲取順序數組值。繼承人我的代碼...從每個循環中的數組拉取增量項

var accordionArray = [] 
$('a').each(function(i) { 
    if ($(this).hasClass('acc-head')) { 
     accordionArray.push($(this).attr('id')); 
    } 
}); //end a 
$('div').each(function(i) { 
    if ($(this).hasClass('ready-accordion')) { 
     $(this).attr('role', 'tab'); 
     $(this).attr('aria-labelledby', accordionArray[i]); 
    } 
}); //end div 

任何幫助將不勝感激,我敢肯定這是愚蠢的,我只是接近它的頂部看到。謝謝

+2

恰好是不工作怎麼辦?你得到了什麼結果,你期望得到什麼結果? – Deleteman 2014-11-25 13:55:03

回答

0

只需添加一個計數器:

var counter = 0; 
$('div').each(function(i) { 
    if ($(this).hasClass('ready-accordion')) { 
     $(this).attr('role', 'tab'); 
     $(this).attr('aria-labelledby', accordionArray[counter]); 
     counter++; 
    } 
}); 
+0

這工作就像一個魅力。沒有考慮增加一個單獨的櫃檯,因爲每個都有它自己的。 [打頭] Doh! – Sharper 2014-11-25 15:48:57

0

你在找這樣的事嗎?

var accordionArray = [] 
$('a').each(function(i) { 
    if ($(this).hasClass('acc-head')) { 
     //accordionArray.push($(this).attr('id')); 
     $('div.ready-accordian').eq(i).attr('aria-labelledby', $(this).attr('id')); 
    } 
}); //end a 
+0

非常感謝您的回覆。 – Sharper 2014-11-25 15:47:42