2012-02-02 13 views
19

Radyo düğmelerinin, yazılarının giriş türünü bulmam ve seçmem gerekir. xjQuery giriş tipini (fakat ayrıca seçim için) bulur

My sorunu dönecekti $(this).attr("type") beri <input type="x"> ile bir şey girdi türünü bulmak kolay Ben türü özelliğini yok <select> unsurları desteklemek için ihtiyaç vardır. Son hedef, radyoyu, metni iade etmek veya seçmek.

Böyle bir şey yapmanın düşündüm, ama daha iyi bir yol var merak ettim: Bütün

if ($(this).tagName == "input") { 
    var result = $(this).attr("type"); //returns radio or text (the attr type) 
} else { 
    var result = $(this).tagName;  //returns select (the element type) 
} 

teşekkürler!

cevap

52

Sen, bu (fiddle here) yetinmek kullanımı kolay eklenti çeşit olabilir:

$.fn.getType = function(){ return this[0].tagName == "INPUT" ? this[0].type.toLowerCase() : this[0].tagName.toLowerCase(); } 

Ve ilk elemanın türünü alacak hangisi bu

$(".element").getType(); // Will return radio, text, checkbox, select, textarea, etc (also DIV, SPAN, all element types) 
$(".elList").getType(); // Gets the first element's type 

gibi kullanırız hangi seçildi.

Diğer bilgiler

sadece bunu kullanabileceğiniz bazı seçiciler sahip olmak istiyorsanız:

$("input:text, input:radio, select"); 

Veya tüm form denetimleri seçmek (more info): için

$(":input") // can return all form types 
+7

10 puan '$ (": girdi")' –

İlgili konular