2012-01-25 17 views
6

Girdilerim var (kimlikleri ile). Ve bu formdaki herhangi bir girdiye tıklamak için bir olayı bağlamalıyım.Formdaki tüm girdiler için bir olay nasıl bağlanır?

$("#siteAdress").click(function(){ 
     $("#reg-login").click(); 
    }); 
    $("#phoneNumber").click(function(){ 
     $("#reg-login").click(); 
    }); 
    $("#reg-email").click(function(){ 
     $("#reg-login").click(); 
    }); 
    $("#reg-login").click(function(){ 
     // DO SOMETHING 
    }); 

Nasıl optimize etmek:

Şimdi, bu inşaat kullanılır?

cevap

14

en kolay yolu onu size bağlamak için gereken tüm unsurları için bir sınıf eklemek ve kullanmak muhtemelen: Bu bir seçenek değilse

$(".event-user").click(function() { /* do something */ }) 

, kendi form için bir id kullanabilirsiniz, ve tüm giriş çocukları sorgulamak:

$("#my-form input[type=text]").click(function() { /* do something */ }) 

ve mümkündür, her zaman seçicileri virgülle ayrılmış bir liste kullanabilirsiniz ne olursa:

$("#siteAddress, #phoneNumber, #reg-email, #reg-login") 
    .click(function() { /* do something */}) 
1

bunu kullanın

$("form input:text").click(function(){ 
    $("#reg-login").click(); 
}); 
2

sahip girdi türlerine bağlı olarak, bunu geniş veya ince tane yapabiliriz. hepsi input tip unsurları iseniz Örneğin, sadece genel bunu:

$('input').click(function(){ ... }); 

Aksi takdirde, metin giriş türleri için özel olarak bunu yapmak istiyorum eğer, örneğin, bunu yapabilirsiniz:

$('input[type="text"]').click(function(){ ... }); 

Seçicilerin hepsi bu! Umarım bu yardımcı olur ...

1

Genel> işaretini kullanmalısınız. Size Anlamı form id almak ve daha sonra bir satır ile tüm çocuklara tıklama işlevi ekleyebilirsiniz: Bu yardımcı olur

$('#formId > input').each(function() { 
    $(this).click(function() { 
     //SOME CODE - btw you can ge the value with this.value; 
    }) 
}); 

umut.

1
$('form input').click(function (e) { 
      SearchForm();//Call function you want 
      return false; 
     }); 

    $('form input').keypress(function (e) { 
      SearchForm();//Call function you want 
      return false; 
    }); 
İlgili konular