Не работает кнопка, созданная программно.
Всем привет. Недавно начал изучать javascript. Работаю c API Яндекс Карт. Они пользуются библиотекой jQuery, так что я тоже решил использовать её. И возникла небольшая проблема. Делаю обработчик для одной кнопки, и создаю с помощью него другую.
$('#routeButton').click(function () {
$('#routes').html('<a href="#" id="showRoute" >Новая кнопка</a>');
});
Но другая кнопка не работает. Не реагирует на обработчик.
$("#showRoute").click(function () {
alert('Есть реакция!');
});
Помогите разобраться. Эту технологию еще не знаю. Может программно созданный элемент не крепляется к обработчику. Если так, то как можно вывести данные из базы и для каждого каждой стоки создать кнопку? |
Аварский,
когда создали тогда и клик присвоили кнопке а ненаоборот или делегирование -- body клик присвоили и боди ждёт когда же нужная кнопка |
Не очень то понял. Объясните пожалуйста на примере...
|
1 вариант
$('#routeButton').click(function () {
$('#routes').html('<a href="#" id="showRoute" >Новая кнопка</a>');
$("#showRoute").click(function () {
alert('Есть реакция!');
});
});
2 вариант
$("#routes").on("click","#showRoute", function () {
alert('Есть реакция!');
});
$('#routeButton').click(function () {
$('#routes').html('<a href="#" id="showRoute" >Новая кнопка</a>');
});
|
Отлично брат. СПС. Помог. Целый день с этим мучился. СПС что объяснил.
|
| Часовой пояс GMT +3, время: 19:46. |