SORU
22 Aralık 2009, Salı


≪input type="text" bir tüm değişiklikleri algılamak;&; (derhal) JQuery kullanarak gt

Birçok yolu vardır bir değeri <input type="text"> dahil olmak üzere değiştirebilirsiniz:

  • tuşa basma
  • kopyala/yapıştır
  • JavaScript ile değiştirilmiş
  • tarayıcı ya da bir araç tarafından otomatik tamamlandı

Benim JavaScript fonksiyonu (akım giriş değeri ile) değişiklik her zaman olmak istiyorum. Ve giriş odağını kaybettiğinde hemen aradı, yok olmak istiyorum.

Tüm tarayıcılarda bunu yapmak için en sağlam ve en temiz şekilde (tercihen jQuery kullanarak) arıyorum.

Örnek kullanım: Twitter Signup sayfasındakullanıcı adıalanın değerini url gösterildiği alır "http://twitter/kullanıcı adı" altında.

CEVAP
21 Mayıs 2010, Cuma


Bu jQuery kodu herhangi bir elemanın anlık değişiklikler yakalar, ve tüm tarayıcılarda çalışması gerekir:

 $('.myElements').each(function() {
   var elem = $(this);

   // Save current value of element
   elem.data('oldVal', elem.val());

   // Look for changes in the value
   elem.bind("propertychange change click keyup input paste", function(event){
      // If value has changed...
      if (elem.data('oldVal') != elem.val()) {
       // Updated stored value
       elem.data('oldVal', elem.val());

       // Do action
       ....
     }
   });
 });

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Helen Bradley

    Helen Bradle

    4 Mart 2008
  • hidetake takayama

    hidetake tak

    3 Mart 2009
  • thewinekone

    thewinekone

    17 Aralık 2005