我有這樣的情況: 有 DIV塊與像「rateN_wrapper」哪裏是「N」的ID是div的數量:灌裝陣列數字
<div id="rate1_wrapper">
<a href="#" id="0_1">...</a>
<a href="#" id="0_2">...</a>
<a href="#" id="0_3">...</a>
</div>
<div id="rate2_wrapper">
<a href="#" id="1_1">...</a>
<a href="#" id="1_2">...</a>
<a href="#" id="1_3">...</a>
</div>
...
var ratings = new Array();
for (i=0; i < 8; i++)
{
ratings[i] = -1; // Default is unrated
}
for (i=0; i < 8; i++)
{
$('#rate' + i + '_wrapper a').click(function() {
ratings[i] = parseInt($(this).attr('id').split('_')[1]);
console.debug(ratings);
});
}
我的工作是填寫數組需要放置點擊鏈接的id(解析)。但它總是隻改變數組(8)的最新元素。爲什麼?
這也有可能完全被使用jQuery。每(),它可能會更清楚 – 2010-05-19 20:24:14
這並沒有幫助我避免for循環。 – Ockonal 2010-05-19 20:29:54
其實,想想吧,如果你在匿名函數體內聲明var idx = i而不是外部循環體,第一個例子會工作... – 2010-05-19 20:30:02