2016-06-08 58 views
-1

對於下面的代碼:如何爲我的JavaScript代碼中的每個div分配唯一的ID?

function cdiv() { 
    var div = document.createElement("div"); 
    document.body.appendChild(div); 
} 

for (i = 0; i < 10; i++) { 
    for (b = 0; b < 10; b++) { 
    cdiv(); 
    } 
} 

的目標是爲分配所創建的每個的div獨特ID。加班,我希望能夠點擊並更新一個div,我的想法是獨特的ID將有助於快速識別它。

+0

您可以指定id值,如$(「。div」)。attr(「id」,「auto_value」);你可以從for循環獲得值。 – ThanhLD

+1

爲了達到您的目的,您不需要身份證。如果您對點擊做出響應,那麼相關的事件處理程序將通過['event.target'](https://developer.mozilla.org/en-US/docs/Web/)直接訪問點擊的項目。 API /事件/目標)。 – nnnnnn

+0

@ThanhLD該問題未標記爲jQuery,因此應給出純JavaScript解答。 –

回答

1

使用基於該

var id = 0; // variable for generating unique id 
 

 
function cdiv() { 
 
    var div = document.createElement("div"); 
 
    div.innerHTML = 'div' + id; 
 
    div.id = 'div' + id++; // generate unique id and then increment value 
 
    document.body.appendChild(div); 
 
} 
 

 
for (var i = 0; i < 10; i++) { 
 
    for (var b = 0; b < 10; b++) { 
 
    cdiv(); 
 
    } 
 
}


另一種方式計數器變量,並設置標識同時使用了循環變量

function cdiv(str) { 
 
    var div = document.createElement("div"); 
 
    div.innerHTML = 'div' + str; 
 
    div.id = 'div' + str; // generate unique id 
 
    document.body.appendChild(div); 
 
} 
 

 
for (var i = 0; i < 10; i++) { 
 
    for (var b = 0; b < 10; b++) { 
 
    cdiv(i + '' + b); 
 
    } 
 
}

+0

但是這隻有在10之後纔會停止。 – Fiido93

+0

我修改參數使其工作。謝謝! – hac13

相關問題