2013-10-25 24 views
7

tarafından Kimliğini Al Merhaba bu bir jquery sorudur i Gönder düğmesini tıkladığında: (not sadece 1 seçebilirsiniz) ve ben burada bu düğmeye tıklama etkinliğini vardır:Sınıf adı JQuery

$("#submit").click(function(){ 

      if($(".select").is(':checked')){ 

       alert($(".select").attr('id')); 
      } 
}); 

O her zaman "select-2" kimliğiyle onay kutusunu seçsem bile "select-1" uyarır. Ben de her ikisi de aynı sınıfta ".select" sınıfıyla ilk olanı tahmin ediyorum Bulunan uyarıda görüntülenir .. Sınıf isimlerini kullanarak kontrol edilen belirli bir kimliği nasıl alabilirim? Teşekkür ederim!

+2

yineleme gerekmez. eğer birçok seçenekten biri = radyo düğmeleri. Birden fazla seçenek var ise = onay kutuları. – Dementic

+0

Cevabımı güncelledik, bir demo ekledim. – Cristy

cevap

30

Her seferinde yalnızca bir onay kutusunu mı işaretliyorsunuz?

alert($(".select:checked").attr('id'));

Veya, aynı anda kontrol Birden fazla onay kutusunu varsa:

Demo
$(".select:checked").each(function(){ 
    alert($(this).attr('id')); 
}); 

: http://jsfiddle.net/UTux2/

2

Sen işaretli onay kutusunu alamayan, sadece soruyorsun "dir biri kontrol edildi mi? " Ayrıca tek seçilebilir, eğer radio olarak değiştirmek için daha iyi olduğunu akılda tutmak bu şekilde

$(".select:checked").attr('id'); 

kullanılarak

$("#submit").click(function(){ 

    var elem = $(".select:checked"); 

    if(elem.length > 0){ 
     alert(elem.attr('id')); 
    } 
}); 
3

alın kimliği.

2
$("#submit").click(function(){ 
      if($(".select").is(':checked')){ 
       var $this=$(".select").is(':checked'); 
       alert($this.attr('id')); 
      } 
}); 
+4

'$ (this'), $ ('# submit')' anlamına gelir, bu doğru değildir. – Cristy

+0

güncellendi ans ...... –

2

Birden çok öğe var. Hepiniz onay kutusu aynı sınıf

$("#submit").click(function(){ 

      $(".select:checked").each(function(){ 
      alert($(this).attr('id')); 
    }); 

}); 
2

sahip birçok kişiden birinin seçimi izin vermek için onay radyo düğmelerini kullanarak değil edilmelidir kontrol etmek gerekir.

<input type="radio" name="select" value="select-1"> 
<input type="radio" name="select" value="select-2"> 

sonra şeyler gerçekten basit alacak:

$("#submit").click(function(){ 

    alert($('[name="select"]:checked').val()); 
}); 
-1

Eğer 'seçeneğini' sınıfa sahip tüm unsurları iterated değil çünkü. Her zaman ilk öğeye gider ve sonucu yazdırır. 'Select' sınıfına sahip tüm öğeleri yinelemek için bir döngü koyun.

0

böyle bir şey deneyin, size radyo düğmelerini kullanarak olmalıdır

 $(document).ready(function() { 
      $("#submit").click(function(){ 
        if($(".select").is(':checked')){ 
         alert($(".select:checked").attr('id')); 
        } 
      }); 
     });