2013-10-27 74 views
0

我有幾個元素與className「錯誤」,我需要動態地爲每個元素添加一個唯一的ID。從堆棧上的其他問題我已經放在一起下面的代碼,但它似乎並沒有工作。Javascript - 爲具有相同類名的多個元素添加唯一的元素ID

function setErrorId() { 
var errorClass = document.getElementsByClassName('error'); 
for (i = 0; i < errorClass.length; i++) { 
    var idName = 'error' + i; 
    errorClass[i].id = idName; 
} 
+0

您是否收到錯誤消息? (另外...爲什麼?) – Ryan

+0

這似乎應該工作正常,你可以張貼小提琴嗎? – elclanrs

+0

錯過了關閉'}' –

回答

1

你有一個未定義的變量i。只是定義它,但不是你的罰款。

function setErrorId() { 
var errorClass = document.getElementsByClassName('error') 
    , i = 0 
    , l = errorClass.length; 

    while (i < l) { 
    errorClass[i].id = 'error' + i++; 
    } 
} 
0

你缺少一個}

這樣的:

function setErrorId() { 
    var errorClass = document.getElementsByClassName('error'); 
    for (i = 0; i < errorClass.length; i++) { 
    var idName = 'error' + i; 
    errorClass[i].id = idName; 
    } 
} 
+0

對不起,我有}在我的代碼中忘記複製它。 – adam

相關問題