2012-02-14 5 views
5

A riesgo de sonar como un tonto - Los diseñadores HTML (HTML5) en nuestra firma mantenerme entregar simulacros funcionales con etiquetas de formulario que no tienen atributos ...Etiqueta de formulario HTML sin atributos. ¿Alguna razón para no hacerlo?

<form> 
    <label for="name">Name</label> 
    <input type="text" id="name" name="name"> 
</form> 

Cada vez que veo este pierdo la esperanza en la humanidad solo un poco más. Pero no sé si debería resumirlos y explicarles los atributos del formulario y por qué los necesitamos, ya que no puedo encontrar ninguna documentación que diga que son "necesarios". Por defecto sé que la etiqueta del formulario asumirá cosas, como el método y la acción, pero prefiero que esos atributos estén en su lugar en lugar de ser omitidos. Es lo que siempre ha sido para aquellos de nosotros que hemos estado escribiendo HTML desde que comenzó.

Entonces, la pregunta general es: ¿Hay algo de malo (como quiera definirlo) con el uso de la etiqueta de formulario sin atributos? Si su acción prevista es la página actual y el método previsto es get, ¿qué argumento existe para incluir versus excluir los atributos predeterminados? ¿O asignándole una identificación que no usas?

esperaba ver esto:

<form id="search_form" action="" method="get"> 
    <label for="name">Name</label> 
    <input type="text" id="name" name="name"> 
</form> 

Respuesta

8

Dependerá de la DOCTYPE está validando en contra. Por ejemplo, en HTML 4.01 Transitional and Strict, se requiere el atributo action, mientras que el atributo method es opcional.

En HTML 5 ambos atributos son opcionales.

+0

No es demasiado difícil encontrarlo, pero es difícil encontrar algo que mencione si una etiqueta de formulario puede estar vacía por completo. Anteriormente, el nombre estaba obsoleto para la etiqueta del formulario y se requería una identificación para validar. Ahora no veo nada en particular que indique que cualquiera de los dos debería estar allí. –

+3

@KaiQing, simplemente use http://validator.w3.org/ –

1

Parece que la acción es requerida por el estándar HTML 4.

action  %URI;   #REQUIRED 

http://www.w3.org/TR/html4/interact/forms.html

+0

Y, sin embargo, la mayoría de los navegadores estarán encantados de predeterminar el valor de la URL actual (asumiendo el modo peculiar). – Oded

+0

Es cierto, pero técnicamente para el html para validar que debe ser una acción vacía, no hay ninguna acción en absoluto. –

+0

Sí, asumiendo el DOCTYPE correcto;) – Oded

3

El mayor problema con no tener un id y action atributos en un formulario es que si usted tiene más de un formulario en la página es muy difícil decir cuál se está refiriendo a - ya sea en el cliente o servidor código.

Como James Montagne menciona en his answer para HTML 4.01 transitional se requiere el atributo action.

Como una cuestión general, yo siempre sería explícito sobre el id, action y method - mantiene estos atributos importantes al aire libre y señala que no fueron olvidados.

+0

Esa fue mi opinión sobre el tema. Me gusta declararlos porque tiene sentido hacerlo, a falta de una mejor manera de decirlo. Cuando lo dejan, no sé si es porque creen que es la manera correcta de hacerlo o si suponen que voy a completarlo con la información correcta.Pero no contratamos html chicos para dejar huecos y requieren auditorías completas. De lo contrario, lo haríamos nosotros mismos y ahorraríamos algo de tiempo. –

+2

@KaiQing - Si ese es su requisito para ellos, hable con ellos al respecto. – Oded

+1

Es cierto: en este post, todo lo que realmente estaba buscando era algún tipo de documentación que indicara que las etiquetas de formulario realmente necesitaban algo en ellas. De lo contrario, mi argumento es simplemente opinión o preferencia. Parece que en este caso es solo eso. El formulario se enviará sin atributos. –

Cuestiones relacionadas