2011-02-04 18 views

Respuesta

23

Las casillas de verificación requeridas no son inusuales. Prácticamente cada formulario de registro utiliza algún tipo de casilla de verificación "He leído y acepto el Acuerdo del usuario".

Si tiene Opera a mano, pruebe el siguiente código. El formulario no se enviará a menos que la casilla esté marcada.

<!doctype html> 
 
<html> 
 

 
<head> 
 
    <title>html5</title> 
 
</head> 
 

 
<body> 
 
    <h1>html5 test</h1> 
 
    <form action="/"> 
 
    <input type="checkbox" required="required" id="cb" name="cb"> 
 
    <label for="cb">required checkbox</label> 
 
    <input type="submit"> 
 
    </form> 
 
</body> 
 

 
</html>

+3

+1: punto muy válido! como me perdí eso? – naveen

+17

No necesita 'required =" required "', solo agrega 'required' es suficiente. – Ben

+14

'required =" required "' es válido XHTML embargo. Un atributo debe tener un valor. – leggetter

7

Para casillas de verificación, la mejor manera es probablemente para preseleccionar y configurarlo para personas con discapacidad. Es una broma.

Para asegurarse de que se haya seleccionado un botón de opción en un grupo, comience con una opción predeterminada o valide con javascript. No hay formas de HTML para hacer eso porque cada posible selección es válida.

En html5 hay un atributo required para las casillas de verificación.

Son algo extraño, así que permítanme citar algo para explicar cómo funcionan.

Para las casillas de verificación, el atributo requerido solo se cumplirá cuando se marquen una o más de las casillas con ese nombre en esa forma.

Para los botones de opción, el atributo requerido solo se cumplirá cuando se marque exactamente uno de los botones de opción de ese grupo de radio.

Por supuesto, siempre debe validar el lado del servidor porque el cliente siempre puede enviarle lo que desee. Simplemente use estos métodos para una mejor experiencia de usuario.

+0

+1 para conjeturas. muy poco probable a menos que presente un argumento más fuerte :) – naveen

+0

¿qué adivina? Acabo de actualizar la respuesta de acuerdo con html5 sepcs –

+1

+1 las especificaciones son claras, pero esto sigue siendo * extraño *. No tiene ningún sentido desde el punto de vista de UI. –

0

yo sólo probé en un botón de opción en Firefox 4. La adición de required a una entrada de radio, a continuación, la presentación antes de seleccionar uno, desencadena una información sobre herramientas "Por favor seleccione una de estas opciones".

E.g. esto funciona:

<input type="radio" name="gender" value="m" required /> 
<input type="radio" name="gender" value="f" /> 
+0

Chrome 12 hace lo mismo. Safari 5 e IE 9 no. Probado en Win7. –

7

He probado requerido atributo para botones de opción hoy en Firefox 17.0.1 en XP SP2.

Parece cumplir con la especificación de requerida atributo para botones de radio/grupos. Cuando Firefox solicita "Seleccione una de estas opciones". tanto de los fragmentos de código siguientes:

O se fijan requerido atributo para cada uno de los botones de radio

<input type="radio" name="gender" value="male" required="required" /> 
<input type="radio" name="gender" value="female" required="required" /> 

O cualquiera de los elementos de radio

<input type="radio" name="color" value="blue" /> 
<input type="radio" name="color" value="red" required="required" /> 
<input type="radio" name="color" value="green" /> 

Cualquier comentario y actualizaciones son bienvenidos.

+2

Enlace a especificación: http://www.w3.org/TR/html-markup/input.radio.html#input.radio.attrs.required ¿Alguien puede encontrar una referencia que indique cuál de estos dos estilos se prefiere para marcando un grupo de botones de radio según sea necesario? No puedo encontrar eso en ningún lado. – Grilse

+0

gracias @Grilse por la URL de referencia de w3.org –

Cuestiones relacionadas