verificacion ejemplos ejemplo casilla html forms checkbox html-input

html - ejemplos - checkbox php



¿Cuál es el valor adecuado para un atributo marcado de una casilla de verificación HTML? (7)

  1. comprobado
  2. marcado = ""
  3. marcada = "marcada"

    son equivalentes

de acuerdo con la w3.org/TR/html-markup/input.checkbox.html de w3.org/TR/html-markup/input.checkbox.html especificaciones ''---- ⓘ revisado = "verificado" o "" (cadena vacía) o vacío Especifica que el elemento representa un control seleccionado .---''

Todos sabemos cómo formar una entrada de casilla de verificación en HTML:

<input name="checkbox_name" id="checkbox_id" type="checkbox">

Lo que no sé, ¿cuál es el valor técnicamente correcto para una casilla de verificación marcada? He visto todos estos trabajos:

<input name="checkbox_name" id="checkbox_id" type="checkbox" checked> <input name="checkbox_name" id="checkbox_id" type="checkbox" checked="on"> <input name="checkbox_name" id="checkbox_id" type="checkbox" checked="yes"> <input name="checkbox_name" id="checkbox_id" type="checkbox" checked="checked"> <input name="checkbox_name" id="checkbox_id" type="checkbox" checked="true">

¿Es la respuesta que no importa? No veo evidencia para la respuesta marcada como correcta here de la spec sí:

Las casillas de verificación (y los botones de radio) son interruptores de encendido / apagado que pueden ser activados por el usuario. Un interruptor está "encendido" cuando se establece el atributo verificado del elemento de control. Cuando se envía un formulario, solo los controles de casilla de verificación "en" pueden tener éxito. Varias casillas de verificación en un formulario pueden compartir el mismo nombre de control. Así, por ejemplo, las casillas de verificación permiten a los usuarios seleccionar varios valores para la misma propiedad. El elemento INPUT se utiliza para crear un control de casilla de verificación.

¿Qué diría un escritor de especificaciones es la respuesta correcta? Por favor proporcione respuestas basadas en la evidencia.


Bueno, para usarlo no creo que importe (similar a deshabilitado y solo de lectura), personalmente uso checked = "check" pero si intentas manipularlos con JavaScript, usas true / false


Es una ciudad bastante loca que la única manera de hacer que el cheque sea falso es omitir cualquier valor. Con Angular 1.x, puedes hacer esto:

<input type="radio" ng-checked="false">

lo cual es mucho más sano, si necesitas hacerlo sin marcar.


Hablando estrictamente, debe poner algo que tenga sentido; de acuerdo con la especificación here , la versión más correcta es:

<input name=name id=id type=checkbox checked=checked>

Para HTML, también puede usar la sintaxis de atributo vacía , checked="" , o incluso simplemente checked (para XHTML más estricto, esto no es compatible ).

Sin embargo, efectivamente, la mayoría de los navegadores admiten casi cualquier valor entre las comillas. Se verificará todo lo siguiente:

<input name=name id=id type=checkbox checked> <input name=name id=id type=checkbox checked=""> <input name=name id=id type=checkbox checked="yes"> <input name=name id=id type=checkbox checked="blue"> <input name=name id=id type=checkbox checked="false">

Y solo lo siguiente quedará sin marcar:

<input name=name id=id type=checkbox>

Véase también esta pregunta similar en disabled="disabled" .


quieres esto, pienso: checked=''checked''


Especificación HTML5 :

http://www.w3.org/TR/html5/forms.html#attr-input-checked :

El atributo de contenido deshabilitado es un atributo booleano.

http://www.w3.org/TR/html5/infrastructure.html#boolean-attributes :

La presencia de un atributo booleano en un elemento representa el valor verdadero, y la ausencia del atributo representa el valor falso.

Si el atributo está presente, su valor debe ser la cadena vacía o un valor que sea una coincidencia ASCII entre mayúsculas y minúsculas para el nombre canónico del atributo, sin espacios en blanco al principio o al final.

Conclusión :

Los siguientes son válidos, equivalentes y verdaderos :

<input type="checkbox" checked /> <input type="checkbox" checked="" /> <input type="checkbox" checked="checked" /> <input type="checkbox" checked="ChEcKeD" />

Los siguientes son inválidos :

<input type="checkbox" checked="0" /> <input type="checkbox" checked="1" /> <input type="checkbox" checked="false" /> <input type="checkbox" checked="true" />

La ausencia del atributo es la única sintaxis válida para falso :

<input />

Recomendación

Si le importa escribir XHTML válido, use checked="checked" , ya que <input checked> no es válido XHTML (pero HTML válido) y otras alternativas son menos legibles. De lo contrario, solo use <input checked> ya que es más corto.


<input ... checked /> <input ... checked="checked" />

Esos son igualmente válidos. Y en JavaScript:

input.checked = true; input.setAttribute("checked"); input.setAttribute("checked","checked");