2013-07-29 16 views
7

Sayfa yüklemesinde ilk kez (seçili öğenin varsayılan değeri için) ve sonra seçim öğesinin her değişikliğinde bir komut dosyası çalıştırmak istiyorum. Tek bir satırda yapmak mümkün mü ya da bu olayların işlevini çoğaltmam gerekiyor mu?jQuery işlevini ve yükte ve açıkta çalışabilir miyim?

Ben önümüzdeki yapıyı kullanabileceğinizi biliyor:

$('#element').on('keyup keypress blur change', function() { 
    ... 
}); 

Ama yük olayı desteklemek için görünmüyor.

Herhangi bir fikrin var mı?

cevap

9

ne demek istediğini anlıyorum, sadece bu olayların herhangi birini tetikleyecek:

$('#element').on('keyup keypress blur change', function() { 
    ... 
}).triggerHandler('keyup'); //or trigger('keyup') or keyup() which then let event propagate 
+0

Kesinlikle önerilmenin en basit yolu bu yüzden bu cevabı kabul ediyorum. – Braggae

5

değişim öğesi için kullanılacak senin:

$('#element').on('change', function() { 
    ... 
}); 

ve yük ilk defa kullanım yapısı üzerinde aynı işlevi kullanmak için gibi:

jQuery(window).on("load", function(){ 

    $('#element').change(); 

}); 

aynı işlevi

çağırmak
3

Anonim işlevler kullanmak yerine (bunları kullanacakları yerde tanımlayın), yalnızca normal bir işlev oluşturabilir ve jQuery'ye bu olaylar gerçekleştiğinde bunu söylemek için söyleyebilirsiniz.

$(document).ready(myFunction); 
$('#element').on('keyup keypress blur change', myFunction); 

function myFunction() { 
    // Do something here... 
}