2011-05-16 84 views
0
$(".IT_Badge").each(function(){ 
    var badges = $(".IT_Badge").val().trim().split(","); 
    for (c = 0; badges.length > c; c++) { 
     currentBadge = badges[c]; 
     currentBadge.replaceWith($("<img/>").attr("src", 'IT_Badges/' + badges[c] + '.png')); 
    } 
}); 

我有多個關鍵字跨度。我需要用src是關鍵字的圖像替換關鍵字。但是,我擔心放置在跨度中的圖像將被放置在所有跨度中,分別稱爲IT_Badge,for循環和每個跨度。我希望替換是跨越一個跨度的基礎。迭代+替換腳本

回答

1

在第一次迭代中,每次都沒有將iconInst設置爲數組。看起來iconInst不是第二次迭代的數組。這是一個錯字嗎?我想你打算做

var iconInst = []; 
$(".IT_Badge").each(function(i, el){ 
    iconInst.push($(this).addClass('Inst' + i)); 
}); 

iconInst.each(function(){ 
    var badges = $(this).val().trim().split(","); 
    for (c = 0; words.length > c; c++) { 
     $(this).contents().replaceWith($("<img/>").attr("src", 'Icon/' + badges[c] + '.png')); 
    } 
}); 

如果是這樣的話,請更新的問題,我們將繼續從那裏,如果不是我不爲你正在嘗試解決這個問題是很清楚的。

+0

對不起,iconInst不是一個數組,只是一個動態創建的類名,因爲我需要區分該類名附加的跨度的每個實例。我需要分別解析/運行這些跨度的每個實例的替換腳本。想想看,但也許沒有必要?我擔心替換會用所有替換圖像的總和替換所有的跨度內容,而不僅僅是跨度特定的內容。 – 2011-05-16 18:30:42