Bu makale makine çevirisi ayna makalesidir, orijinal makaleye geçmek için lütfen buraya tıklayın.

Görünüm: 15235|Yanıt: 1

[Jırlama] Jquery'de dinamik olarak eklenen eleman düğümlerinin olayları tetikleyememesi sorununu çözmenin iki yolu vardır

[Bağlantıyı kopyala]
Yayınlandı 28.06.2016 12:43:24 | | |
Örneğin, mesaj listesini okumak için ajax oluştururken, her mesajdan sonra bir yanıt butonu vardır, sınıf "reply" olur, eğer $(".reply").click(function(){ //do something... } kullanırsanız, muhtemelen listedeki yanıt butonu daha sonra ajax tarafından yüklenir, tıklama olayı geçersiz olur.
Aslında, en kolay yol doğrudan etikete onclick="" yazmaktır, ancak bunu yazmak aslında biraz düşük ve en iyi yol bir tıklama olayını sınıf adına bağlamaktır.
Jquery'de dinamik olarak eklenen eleman düğümlerinin olayları tetikleyememesi sorununu çözmenin iki yolu vardır:
Daha iyi sunum için, belirli bir sayfanın gövdesinin altında aşağıdaki yapıya sahip kodunuz olduğunu varsayalım:


Yöntem 1: Canlı kullanın
live() fonksiyonu, seçilen öğeye bir veya daha fazla olay işleyicisini bağlar ve bu olaylar gerçekleştiğinde hangi fonksiyonların çalıştırılacağını belirler. live() fonksiyonu, seçicinin mevcut ve gelecekteki elemanlarını eşleştirmek için geçerlidir. Örneğin, scriptler aracılığıyla dinamik olarak oluşturulan öğeler.
Uygulama şöyledir:


Yöntem 2: Üzerinde Kullanım
Bir olayı ana veya gövdesine on yöntemiyle bağlayabilirsiniz, aşağıdaki gibi:


Şimdi sorunun çözülüp çözülmediğine bakmaya çalışabilirsiniz, umarım bu makale size gerçekten yardımcı olur.

İkinci kullandığım şey, ebeveyn seviye öğeyi bağlamak...





Önceki:js Json nesneleri Json dizileri ile değiştirilir
Önümüzdeki:js numarası yönteme aktarılır ve değer bir veya eksi bir ile eklenir
Yayınlandı 8.07.2016 14:34:49 |
Feragatname:
Code Farmer Network tarafından yayımlanan tüm yazılım, programlama materyalleri veya makaleler yalnızca öğrenme ve araştırma amaçları içindir; Yukarıdaki içerik ticari veya yasa dışı amaçlarla kullanılamaz, aksi takdirde kullanıcılar tüm sonuçları ödemelidir. Bu sitedeki bilgiler internetten alınmakta olup, telif hakkı anlaşmazlıklarının bu siteyle hiçbir ilgisi yoktur. Yukarıdaki içeriği indirmeden sonraki 24 saat içinde bilgisayarınızdan tamamen silmelisiniz. Programı beğendiyseniz, lütfen orijinal yazılımı destekleyin, kayıt satın alın ve daha iyi orijinal hizmetler alın. Herhangi bir ihlal olursa, lütfen bizimle e-posta yoluyla iletişime geçin.

Mail To:help@itsvse.com