@aristarhandrianov

Как обратиться к динамически созданному элементу внутри selectable?

День добрый!
Подскажите как можно обратиться к динамически созданному элементу внутри selectable

Мой код:
.selectable({
	filter: 'section',	
	stop: function(event, ui) { 
		$(document).find('.sectionTools').remove();
		$('.ui-selected').children().append(""
		+"<div class='sectionTools'>"
		+"<span class='tool tool-move ico'>{}</span>&#8194;"
		+"<span class='tool tool-remove ico'>'</span>"
		+"</div>");

		// Следующая функция не срабатывает
		$('.tool-remove').on( "click", function() {
			$('.ui-selected').remove();
		});
	}
	
});
  • Вопрос задан
  • 2375 просмотров
Решения вопроса 1
Можно так:
var toolremove = $("<span class='tool tool-remove ico'>'</span>").click(function () {
  $('.ui-selected').remove();
});
var sectiontools = $("<div class='sectionTools'>"
    +"<span class='tool tool-move ico'>{}</span>&#8194;"
    +"</div>").append(toolremove);
$('.ui-selected').children().append(sectiontools);


Или так:
$('.ui-selected').children().append($("<div class='sectionTools'>"
    +"<span class='tool tool-move ico'>{}</span>&#8194;"
    +"<span class='tool tool-remove ico'>'</span>"
    +"</div>").children('.tool-remove').click(function() {
      $('.ui-selected').remove();
    }).parent());
Ответ написан
Пригласить эксперта
Ответы на вопрос 3
mlnkv
@mlnkv
JavaScript Developer
$('.ui-selected').on( "click", '.tool-remove', function() {
  $('.ui-selected').remove();
});
Ответ написан
gelevanog
@gelevanog
javascript developer
Не работает видимо потому что к динамически созданным элементам не биндится событие клика. Надо обращаться через document
Ответ написан
morflot
@morflot
Frontend Developer
$('body').on( "click", '.tool-remove', function() {
  $('.ui-selected').remove();
});
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы