Pregunta

Regresaré a un proyecto reciente que resuelve los problemas de accesibilidad y me aseguro de que todos los elementos del formulario tengan etiquetas. Poner el texto de la etiqueta en una etiqueta causó un problema con un código poco claro que había escrito antes.

Básicamente, si tiene un botón de opción y su etiqueta:

<label for="zone_r1"><input type="radio" name="zone" id="zone_r1" value="NY" />New York</label>

Y usas jquery para ocultarlo así:

$('#zone_r1').hide();

El botón real está oculto pero no el texto de la etiqueta. Originalmente hice un espacio para el texto de la etiqueta y lo oculté así:

<input id="NY" type="radio" name="zone" value="NY" /><span id="nyTXT">New York</span>

y

$('#NY').hide();
$('#nyTXT').hide();

¿Alguna idea? Prefiero no usar el kludge y es posible que no se valide con el espacio en la etiqueta, pero tal vez estoy siendo demasiado celoso.

¿Fue útil?

Solución

$('#zone_r1').parent().hide();

funciona para mí

Otros consejos

Creo que esto debería funcionar para usted

$("label[for=zone_r1],#zone_r1").hide();

Esto selecciona la etiqueta con " para " atributo establecido en el botón de radio que está buscando, así como el botón de radio en sí, y los oculta a ambos

¿qué pasa con $('label:has(#zone_r1)').hide();

Para el primer botón de opción, puede ocultar el botón real y luego su padre :

$('#zone_r1').hide().parent().hide();

Para el segundo caso, puede ocultar el botón y el " siguiente " hermano:

$('#NY').hide().next().hide();

Puedes hacer esto:

1.) Defina la entrada del botón de radio sin una etiqueta circundante.

2.) Ajuste el " texto de opción " (texto a la derecha del botón de opción) en un <span>.

3.) Use esta declaración jQuery: $("input:radio:not(:checked), input:radio:not(:checked) + span").hide();

Esto seleccionará el botón de opción y el texto a la derecha del botón de opción y lo ocultará.

Simplemente coloque el selector 'etiqueta' en padre:

$(':radio[id=zone_r1]').parent('label').hide();

Ver mi ejemplo de jsFiddle

ocultar el contenedor del botón de radio o TD según el valor

jQuery (" input [type = radio] [value = 'EU2'] "). parent (). hide ();

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top