Compruebe si la entrada es cuadro de texto, seleccionar, área de texto o radio

Tengo un formulario con diferentes campos de entrada html …

1)  2)  3)  4)  5)  

¿Cómo podría determinar qué tipo de campo de entrada está utilizando jQuery? Por ejemplo: si quisiera hacer una verificación para ver si input = “select” entonces haga cosas.

 $('input') // selects all types of inputs $('input:checkbox') // selects checkboxes $('select') // selects select element $('input:radio') // selects radio inputs $('input[type="text"]') // selects text inputs 

puede usar event.target.type , esto alerta sobre qué tipo de input , textrea o select es el objective del evento.

 $('input, textarea, select').change(function(event){ alert(event.target.type) }) 

http://jsfiddle.net/Q4BNH/

Puedes usar jquery’s .is (). Por ejemplo

  if ( $(this).is("input") ) //or if ( $(this).is('input:text') ) 

Más información aquí

Puede recorrer todos los elementos del formulario usando :input como selector. Como los elementos select y textarea no tienen un atributo de type , desea utilizar .is()

  $(':input').each(function(){ if($(this).is('select')){ var inputType = 'select'; }else if($(this).is('input:text')){ var inputType = 'text'; }else if($(this).is('input:checkbox')){ var inputType = 'checkbox'; } console.log('input type = '+inputType+'); }); 

Para 1, 3, 4:

 $("input").attr('type'); 

Puede hacer esto escribiendo un selector que saque cada uno de estos elementos, y luego puede recorrerlos y verificar el tipo. Algo como esto:

 $('input, textarea, select').each(function() { var el = $(this); if(el.is('input')) { //we are dealing with an input var type = el.attr('type'); //will either be 'text', 'radio', or 'checkbox } else if(el.is('select')) { //we are dealing with a select //code here } else { //we are dealing with a textarea //code here } }); 

Te sugiero que uses JQuery es syntax.

http://api.jquery.com/is/

Algo a lo largo de las líneas de

 $(document).ready(function() { var items = $("input"); if(items.first().is("input[type=text]")) { alert("Text type"); } }); 

Puede verlo aquí http://jsfiddle.net/JRLn9/2/

 var tipo = $('#elemento14').attr('type'); 

Utilice .focus (); ?

http://jsfiddle.net/U9Raa/