Когда я звоню по клику с помощью html(), не работает
JS:
$(document.body).on('click', '.pls', function() {
$(".pls").html('<select id="plselect"><option value="list1">list1</option><option value="list2">list2</option</select><br>');
});
HTML:
<div class="pls">pls</div>
^ Этот пример: http://jsfiddle.net/B5xqp/1/
Поскольку добавленный select
находится внутри класса .pls
, событие click
вызывает проблемы.
Так что сделайте так
$(document.body).on('click', '.pls', function() {
$(".pls").html('<select id="plselect"><option value="list1">list1</option><option value="list2">list2</option</select><br>');
$(document.body).off('click');
});
После того, как select
добавлен в класс, удалите событие click
с помощью приложения .off()
обработчика события.
Обновления: на основе ваших комментариев кажется, что вы не хотите удалять обработчик событий. Поэтому, если я правильно понял, вы можете попробовать это
$(document.body).on('click', '.pls', function () {
$(".pls").after('<select id="plselect"><option value="list1">list1</option><option value="list2">list2</option</select><br>');
});