我需要一個循環的幫助......它可能很簡單,但我很難編碼它。Javascript/jQuery Id檢查驅動器編號功能與驗證
基本上,我需要檢查現有的ID號碼,以便我可以使用不同的號碼創建唯一的ID。它們的命名方式如下:id =「poly'+ i'」按我的函數順序排列,其中i等於現有元素的數量。例如:Array 1,Array 2,Array 3對應於i = 1用於創建Array 1,i = 2用於Array 2等。
現在我基於現有元素的總數,而我的「CreateNew」函數被關閉x = i + 1(所以上面的例子中,新元素將被命名爲Array 4)。問題是,如果刪除中間數字中的一個,「創建」功能將複製高數字。即陣列1,2,3刪除2,創建新的 - >陣列1,3,3.
我需要一個if()語句來檢查數組是否已經存在然後for()循環遍歷所有我的直到它證實。不知道如何編碼。
我試圖糾正代碼如下(注意:我最初沒有寫這篇文章,我只是想用我的最小JS技能加以糾正):
function NewPanel() {
var i = numberOfPanels.toString();
var x = (parseInt(i)+1).toString();
$('#items').append('<div onclick="polygonNameSelected(event)" class="polygonName" id="poly'+i+'"> Array '+ x +' <a href="javascript:void(0)" onclick="removePolygon('+i+');return false;"> </a></div>');
$('div[id*=poly]').removeClass('selected');
$('#poly'+i).addClass('selected');
$('#poly'+i).click(function() {
selectedPolygon = i;
$('div[id*=poly]').removeClass('selected');
$(this).addClass('selected');
});
}
THANK YOU! :)
UI上有一個單獨的功能,允許用戶「刪除」陣列。你的解決方案是有道理的,除了例如當你有[1,2,3,4,5]的數組1和2的情況,並且從數組1中刪除除1之外的所有數據。你只需要創建一個帶有值的標識= 2,從而導致相同的id重複問題。 –
因爲它是一個簡單的修復程序,所以會進行測試。 –