Esta página está traduciéndose a partir del artículo DOM:form,
razón por la cual puede haber algunos errores sintácticos o partes sin traducir.
Puedes colaborar continuando con la traducción
Interfaz del elemento formulario de HTML
Los elementos FORM comparten todas las propiedades y métodos de los otros elementos HTML descritos en el capítulo del elemento. También tienen la interfaz especial HTMLFormElement.
Esta interfaz proporciona métodos para crear y modificar los elementos FORM usando el DOM. El siguiente ejemplo muestra como crear un nuevo formulario, como modificar sus atributos y enviarlo:
// Crea un formulario
var f = document.createElement("form");
// Lo añade en el cuerpo ('body') del documento
document.body.appendChild(f);
// Añade los atributos de acción y método
f.action = "/cgi-bin/some.cgi";
f.method = "POST"
// Llama el método de enviar el formulario
f.submit();
Además, el siguiente documento HTML muestra como se puede extraer información de un formulario y cambiar algunos de sus atributos.
<title>Ejemplo de formulario</title>
<script type="text/javascript">
function getFormInfo() {
var info;
// Obtiene una referencia utilizando la colección de formularios
var f = document.forms["formularioA"];
info = "f.elements: " + f.elements + "\n"
+ "f.length: " + f.length + "\n"
+ "f.name: " + f.elements + "\n"
+ "f.acceptCharset: " + f.acceptCharset + "\n"
+ "f.action: " + f.action + "\n"
+ "f.enctype: " + f.enctype + "\n"
+ "f.encoding: " + f.encoding + "\n"
+ "f.method: " + f.method + "\n"
+ "f.target: " + f.target;
document.forms["formularioA"].elements['tex'].value = info;
}
// Se pasa la referencia al formulario desde el
// atributo al hacer clic ('onclick') del botón con la ayuda de este.formulario ('this.form')
function setFormInfo(f) {
f.method = "GET";
f.action = "/cgi-bin/evil_executable.cgi";
f.name = "totally_new";
}
</script>
<h1>Ejemplo de formulario</h1>
<form name="formularioA" id="formularioA"
action="/cgi-bin/test" method="POST">
<p>Haga clic en "Info" para ver informaciones de este formulario.
Haga clic en "Set" para cambiar los parámetros y otra vez en "Info" para ver los efectos</p>
<p>
<input type="button" value="Info"
onclick="getFormInfo();">
<input type="button" value="Set"
onclick="setFormInfo(this.form);">
<input type="reset" value="Reset">
<br>
<textarea id="tex" style="height:15em; width:20em">
</p>
</form>
Propiedades
- form.elements (todos los elementos del formulario)
-
.elementsdevuelve una colección de todos los controles que hay en el formularioFORM. - form.length
-
.lengthdevuelve la cantidad de controles que hay en el formulario - form.name
-
.namedevuelve el nombre del formulario actual en forma de cadena. - form.acceptCharset
-
.acceptCharsetdevuelve una lista del conjunto de caracteres soportados para el actual elementoFORM. - form.action
-
.actionobtiene/configura la acción del elementoFORM. - form.enctype
-
.enctypegets/sets the content type of theFORMelement. - form.encoding
-
.encodinggets/sets the content type of theFORMelement. - form.method
-
.methodobtiene/configura el método HTTP utilizado para enviar el formulario. - form.target
-
.targetobtiene/configura el objetivo de la acción (i.e., the frame to render its output in).
Métodos
- form.submit
- submit() manda el formulario.
- form.reset
- reset() restaura el formulario, lo devuelve al estado inicial.