const continueButton = $("<button>Doesn't work.</button>").click(() => {alert("hello")});
$(".content").append(continueButton.prop('outerHTML'));
$(".content").append ($("<button>Works.</button>").click(() => {alert("hello")}))
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="content">
</div>
Я задаю этот вопрос потому, что мне нужно передать строковую версию некоторого HTML функции. По этой причине я не могу использовать .append. но когда я использую приведенный выше код, кажется, что событие click больше не работает.
Как я могу получить HTML в виде строки, но чтобы событие click все еще работало?
Еще один контекст: я использую библиотеку, которая ожидает, что я добавлю к ней HTML как строку. Но я хочу добавить HTML с кнопкой, которая срабатывает при нажатии. Я использую jQuery для создания HTML, но когда я пытаюсь передать строку HTML в библиотеку, кнопки не работают.