style removeattribute disabled data attribute addattr javascript jquery html

javascript - removeattribute - jquery recibe toda la información de forma específica



jquery prop (3)

El siguiente código ayuda a obtener los detalles de los elementos del formulario específico con el id del formulario,

$(''#formId input, #formId select'').each( function(index){ var input = $(this); alert(''Type: '' + input.attr(''type'') + ''Name: '' + input.attr(''name'') + ''Value: '' + input.val()); } );

El siguiente código ayuda a obtener los detalles de los elementos de todos los formularios que se colocan en la página de carga,

$(''form input, form select'').each( function(index){ var input = $(this); alert(''Type: '' + input.attr(''type'') + ''Name: '' + input.attr(''name'') + ''Value: '' + input.val()); } );

El siguiente código ayuda a obtener los detalles de los elementos que se colocan en la página de carga incluso cuando el elemento no está dentro de la etiqueta,

$(''input, select'').each( function(index){ var input = $(this); alert(''Type: '' + input.attr(''type'') + ''Name: '' + input.attr(''name'') + ''Value: '' + input.val()); } );

NOTA: Agregamos el nombre de etiqueta de elemento más que necesitamos en la lista de objetos como se muestra a continuación,

Example: to get name of attribute "textarea", $(''input, select, textarea'').each( function(index){ var input = $(this); alert(''Type: '' + input.attr(''type'') + ''Name: '' + input.attr(''name'') + ''Value: '' + input.val()); } );

¿Hay alguna forma de completar todos los datos de cierta forma? digamos, algo como esto:

<form id="unique00"> <input type="text" name="whatever" id="whatever" value="whatever" /> <div> <input type="checkbox" name="whatever" id="whatever" value="whatever" /> </div> <table><tr><td> <input type="hidden" name="whatever" id="whatever" value="whatever" /> <input type="submit" value="qweqsac" /> </td></tr></table> </form> <form id="unique01"> <div> <input type="text" name="whatever" id="whatever" value="whatever" /> <input type="checkbox" name="whatever" id="whatever" value="whatever" /> </div> <table><tr><td> <input type="hidden" name="whatever" id="whatever" value="whatever" /> </td></tr></table> <select>blah...</select> <input type="submit" value="qweqsac" /> </form> etc forms... forms...

* nota: cada formulario puede tener una cantidad diferente de entrada y tipo y también una estructura html diferente

Entonces, ¿hay alguna manera de completar la entrada desde cierta identificación de formulario? por ejemplo, si hago clic en el botón de enviar desde cierta identificación de formulario, entonces jquery rellenará para mí toda la entrada dentro de ese id de formulario. actualmente lo que estoy haciendo es así:

$("form").submit(function(){ return validateForm($(this)) }); function validateForm(form){ var retVal = true; var re; $.each(form.serializeArray(), function(i, field) { var input = $(''input[name=''+field.name+'']''); field.value = $.trim(field.value); switch(field.name){ case "name" : and another cases... } }) }

eso fue trabajo, pero en ese caso, solo obtengo field.name y field.value, y de hecho lo que quiero es, quiero un objeto jquery para cada elemento de entrada, para poder acceder a su css, id, name y incluso animar esos elementos de entrada

¿hay alguna manera de esto?

por favor, hágamelo saber y gracias de antemano! Y


Para iterar a través de todas las entradas de una forma, puede hacer esto:

$("form#formID :input").each(function(){ var input = $(this); // This is the jquery object of the input, do what you will });

Utiliza el jquery : selector de entrada para obtener TODOS los tipos de entradas; si solo quieres texto, puedes hacerlo:

$("form#formID input[type=text]")//...

etc.


Utilice el atributo "elementos" del Formulario HTML :

$.each($("form").elements, function(){ console.log($(this)); });

Ahora no es necesario proporcionar nombres como "input, textarea, select ...", etc.