Jquery создать уникальный идентификатор
$(document).ready(function() {
$('a.menuitem').click(function() {
var arr = 0;
var link = $( this ), url = link.attr( "href" );
var newDiv = $( document.createElement( 'div' ) )
$( "#content_pane" ).append( newDiv );
newDiv.load( url );
return false;
});
});
Как вы видите, я создаю div
и добавляю к нему некоторый контент, как бы я дал каждому div
, который создал уникальный идентификатор, что-то вроде раздела 1, section2, section3 и т.д.
Ответы
Ответ 1
Просто используйте счетчик:
var section = 1;
$(function() {
$("a.menuitem").click(function() {
...
$("<div></div>").attr("id", "section" + section++).appendTo("#content_pane");
...
return false;
});
});
Кроме того, я бы предложил создать элемент в соответствии с приведенным выше.
Ответ 2
Начиная с jQuery 1.9 UI существует функция $().uniqueId()
, которая устанавливает уникальный атрибут id (если идентификатор уже не определен):
http://api.jqueryui.com/uniqueId/
(Обратите внимание, что для этого требуется jQueryUI поверх jQuery.)
Ответ 3
Вам не нужно это делать. Если вы можете сохранить идентификатор в переменной, вы можете сохранить сам элемент (ну, ссылку на элемент) в переменной.
Ответ 4
Теперь, когда Backbone.js приобрел популярность, если вы включите его, вы автоматически получите доступ к Underscore, просто используйте: Подчеркивание: uniqueId.
Или включите его сам по себе, он довольно легкий и имеет несколько отличных функций