Получение идентификатора элемента из динамического элемента с помощью раскрытия шаблона модуля
У меня есть модуль, который создал некоторые элементы динамически. Поскольку они создаются динамически, я связываю события, используя статический элемент $('#data-container)
содержит динамически созданные элементы, например, так:
var $dataContainer = $('#data-container');
var $deleteProject = $('.delete-project');
$dataContainer.on('click', $deleteProject, _deleteProject);
Ооо.... я не могу использовать $(this)
чтобы получить ID
если кнопка, которую я нажал. Контекст #data-container
а не фактическая кнопка, которую я нажал. Я должен также добавить, что так, как я могу это сделать? Вот мой полный код для лучшего понимания:
var $dataContainer = $('#data-container'); // Container holding dynamic elements
var $deleteProject = $('.delete-project'); // Delete buttons for elements
$dataContainer.on('click', $deleteProject, _deleteProject);
function _deleteProject(){
var project = $(this).attr('id'); // Doesn't work
console.log(project);
}
1 ответ
Решение
Вы можете получить идентификатор из аргумента события. Попробуй это. Событие всегда должно содержать информацию о том, какая цель была нажата.
function _deleteProject(event){
var id = event.target.id;
var project = $(this).attr('id'); // Doesn't work
console.log(project);
}