Posible duplicado: se
verifica la comprobación del botón de opción específico
Tengo estos 2 botones de opción en este momento para que el usuario pueda decidir si necesita franqueo incluido en el precio o no:
<input type="radio" id="postageyes" name="postage" value="Yes" /> Yes
<input type="radio" id="postageno" name="postage" value="No" /> No
Necesito usar Jquery para verificar si el botón de opción 'sí' está marcado, y si es así, hacer una función de agregar. ¿Podría alguien decirme cómo haría esto, por favor?
Gracias por cualquier ayuda
editar:
He actualizado mi código a esto, pero no funciona. ¿Estoy haciendo algo mal?
<script type='text/javascript'>
// <![CDATA[
jQuery(document).ready(function(){
$('input:radio[name="postage"]').change(function(){
if($(this).val() == 'Yes'){
alert("test");
}
});
});
// ]]>
</script>
jquery
html
radio-button
Daniel H
fuente
fuente
Respuestas:
O, lo anterior, nuevamente, usando un poco menos superfluo jQuery:
Revisado (mejorado-algunos) jQuery:
Mostrar fragmento de código
Demostración de JS Fiddle .
Y, además, una actualización moderada (ya que estaba editando para incluir fragmentos y los enlaces JS Fiddle), para envolver los
<input />
elementos con<label>
s, permitir hacer clic en el texto para actualizar lo relevante<input />
, y cambiar los medios para crear el contenido a agregar:Demostración de JS Fiddle .
Además, si solo necesita mostrar contenido según el elemento que verifique el usuario, una ligera actualización que alternará la visibilidad mediante un show / hide explícito:
Y, finalmente, usando solo CSS:
Demostración de JS Fiddle .
Referencias
:checked
selector .~
) combinador .appendTo()
.change()
.:checked
selector .filter()
.is()
.:radio
selector .remove()
.text()
.toggle()
.val()
.fuente
Prueba esto
fuente
Algo como esto:
fuente
$(...).length
en su lugar.#postageyes:checked
o$('#postageyes').is(':checked')
?is()
devuelve un valor booleano. Entonces, el llamado.length()
está roto. De los documentos: "A diferencia de otros métodos de filtrado, .is () no crea un nuevo objeto jQuery. En cambio, le permite probar el contenido de un objeto jQuery sin modificación". - api.jquery.com/isEsto escuchará un evento de cambio en los botones de radio. En el momento en que el usuario hace clic
Yes
, el evento se activará y podrá agregar todo lo que desee al DOM.fuente
fuente
fuente
$("#postageyes:checked"
siempre será cierto? ¿No tendrías que usar.length
para que funcione?Prueba esto:
fuente
fuente
Esto escuchará el evento cambiado. He intentado las respuestas de otros, pero esas no funcionaron para mí y finalmente, esta funcionó.
fuente