Например, при създаване на ajax за четене на списъка със съобщения, след всяко съобщение има бутон за отговор, класът е "reply", ако използвате $(".reply").click(function(){ //do something...}), вероятно бутонът за отговор в списъка, зареден от ajax по-късно, събитието клик ще бъде невалидно. Всъщност най-лесният начин е да се напише onclick="" директно в тага, но писането на това е малко ниско, а най-добрият начин е да се свърже клик събитие към името на класа. Има два начина да се реши проблемът, че динамично добавените елементни възли в jquery не могат да задействат събития, както следва: За по-добра презентация, да кажем, че имате код със следната структура под тялото на определена страница:
Метод 1: Използване на живо Функцията live() свързва един или повече обработващи събития към избрания елемент и определя кои функции да се изпълняват, когато тези събития се случат. Функцията live() се прилага за съвпадение на настоящите и бъдещите елементи на селектора. Например, елементи, създавани динамично чрез скриптове. Реализацията е следната:
Метод 2: Използване върху Можете да свържете събитие с неговия родител или тяло чрез on-метода, както следва:
Сега можете да опитате да проверите дали проблемът е решен, надявам се тази статия наистина да ви помогне.
Вторият, който използвам, е за свързване на елемента на родителско ниво...
|