Все ответы здесь (кроме phpjs) не генерируют уникальные идентификаторы, потому что они основаны на случайности.Random не уникален!
простое решение:
window.unique_id_counter = 0 ;
var uniqid = function(){
var id ;
while(true){
window.unique_id_counter++ ;
id = 'uids_myproject_' + window.unique_id_counter ;
if(!document.getElementById(id)){
/*you can remove the loop and getElementById check if you
are sure that noone use your prefix and ids with this
prefix are only generated with this function.*/
return id ;
}
}
}
Добавить динамический префикс легко, если это необходимо.Просто замените unique_id_counter
на массив, хранящий счетчики для каждого префикса.