Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Проблема! Добавление элементов с помощью append() и работа с ними (https://javascript.ru/forum/jquery/46544-problema-dobavlenie-ehlementov-s-pomoshhyu-append-i-rabota-s-nimi.html)

Gurchava 14.04.2014 16:40

Проблема! Добавление элементов с помощью append() и работа с ними
 
Здравствуйте. Допустим, по нажатию кнопки X, c помощью функции append(), добавляется HTML код, который является кнопкой Y c id = 'but0'. После того как по нажатию кнопки X создается несколько кнопок Y c одинаковыми id= 'but0', скрипт делает у каждой Y кнопки разный id, типа id = 'but0', id = 'but1', id = 'but2' и т.д. Далее я хочу по нажатию кнопки, допустим, с id = 'but2' выполнить какое-нибудь действие:
$('button#but2').on('click', function(){
		//код
	})

Дело в том что JQuery отказывается выполнять это действие. Оно выполняется только если кнопка уже существует изначально, а не добавляется посредством append() в процессе работы программы. К слову элементы добавляются корректно и все id изменяются, так что если посмотреть через консоль браузера искомая кнопка c id = 'but2' существует. Подскажите, профи, можно ли как-то решить проблему?

рони 14.04.2014 16:53

Gurchava,
ставьте on на элемент выше - тот который включает все созданные элементы

Tek 14.04.2014 16:56

1) Если используйте id в селекторе вкините все остальное $('#but2')
2) on для данной задачи нужно использовать не так,
$(window).on('click','#but2', function(){
        //код
});
//window можно заменить на элемент выше

Gurchava 14.04.2014 17:09

Спасибо челы, проблема решена!:p


Часовой пояс GMT +3, время: 05:57.