JQuery. Не срабатывает клик по кнопке
Есть кнопка с id closeEdit и есть событие, которое должно срабатывать при клике, но оно не срабатывает:
$("#closeEdit").click(function () {
$("#inEdit").text($("#editText").val());
})
Как это исправить?
(думал, что .text() не сработал, проверил alert'ом, не сработало)
Ответы (1 шт):
Автор решения: Николай Парахневич
→ Ссылка
Вероятно, во время инициализации вашего кода, элементы, задействованные в коде, отсутствуют в DOM.
Оберните ваш код в $(document).ready().
Код, включенный в $(document).ready() будет запускаться только после того, как объектная модель документа (DOM) страницы будет готова для JavaScript.
$(document).ready(() => {
$("#closeEdit").click(function() {
$("#inEdit").text($("#editText").val());
})
})
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<button id="closeEdit">Нажми меня</button>
<input id="editText" value="Текст из поля" />
<div id="inEdit"></div>
Также вы можете использовать функцию on() и тогда вам фактически не нужно использовать функцию готовности документа(указанную выше).
$(document).on('click', '#closeEdit', function() {
$("#inEdit").text($("#editText").val());
})
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<button id="closeEdit">Нажми меня</button>
<input id="editText" value="Текст из input" />
<div id="inEdit"></div>