example - consumir servicio rest desde jquery
jQuery encuentra el tipo de entrada(pero tambiƩn para seleccionar) (2)
Necesito encontrar el tipo de entrada para los botones de radio, texto y selecciones. Es fácil encontrar el tipo de entrada de cualquier cosa con <input type="x">
ya que $(this).attr("type")
devolvería x
Mi problema es que debo admitir los elementos <select>
, que no tienen el atributo type. El objetivo final es devolver la radio, el texto o seleccionar.
Pensé en hacer algo como esto, pero tenía curiosidad si hay una mejor manera:
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)
}
¡Gracias a todos!
Puedes hacer esto ( jugar aquí ), hacer algún tipo de complemento fácil de usar:
$.fn.getType = function(){ return this[0].tagName == "INPUT" ? this[0].type.toLowerCase() : this[0].tagName.toLowerCase(); }
Y usalo asi
$(".element").getType(); // Will return radio, text, checkbox, select, textarea, etc (also DIV, SPAN, all element types)
$(".elList").getType(); // Gets the first element''s type
Que obtendrá el tipo del primer elemento que se selecciona.
Otra información
Si solo quieres tener algunos selectores puedes usar esto:
$("input:text, input:radio, select");
O seleccione todos los controles de formulario ( más información ):
$(":input") // can return all form types
Todos los tipos de cuadro de entrada y cuadro de selección reunidos por jQuery encuentran:
$(''#myForm'').find(''select,input'').each(function(i,box){
alert($(box).attr(''name''));
}