Tengo tres botones de radio con el mismo nombre y valores diferentes.Cuando hago clic en el tercer botón de radio, la casilla de verificación y el cuadro de texto se desactivarán. Pero cuando elijo otros dos botones de radio, debe mostrarse.Necesito la ayuda en Jquery.Gracias en avanzar....
<form name="checkuserradio">
<input type="radio" value="1" name="userradiobtn" id="userradiobtn"/>
<input type="radio" value="2" name="userradiobtn" id="userradiobtn"/>
<input type="radio" value="3" name="userradiobtn" id="userradiobtn"/>
<input type="checkbox" value="4" name="chkbox" />
<input type="text" name="usertxtbox" id="usertxtbox" />
</form>
name
Los s pueden ser idénticos, pero losid
s deben ser únicos.Respuestas:
HTML
Javascript
fuente
i
se transmite afunction(i)
través de JQuery'seach()
.i==2
se utiliza para acceder al tercer botón de opción. Consulte mis códigos.<span id="radiobutt">
- ¿Primo de RadioHead?No es realmente necesario, pero una pequeña mejora en el código de okw que haría que la llamada a la función sea más rápida (ya que está moviendo el condicional fuera de la llamada a la función).
fuente
Este hilo es un poco antiguo pero la información debería actualizarse.
http://api.jquery.com/attr/
fuente
removeProp
para la propiedad para discapacitados. Los documentos de jQuery dicen usarprop("disabled", false);
en su lugar. api.jquery.com/prop/#prop-propertyName-valueNo estoy seguro de por qué algunas de estas soluciones usan .each (); no es necesario.
Aquí hay un código de trabajo que se deshabilita si se hace clic en la tercera casilla de verificación; de lo contrario, se elimina el atributo deshabilitado.
Nota: agregué una identificación a la casilla de verificación. Además, recuerde que los identificadores deben ser únicos en su documento, por lo tanto, elimine los identificadores de los botones de radio o hágalos únicos
fuente
each()
se usó porque queremos obtener el tercer botón de opción . También podemos usar$("input[type=radio]:eq(2)")
. Su método identifica el botón de opción por valor, que por supuesto también es válido. :)Sé que no es un buen hábito responder una pregunta antigua, pero estoy dando esta respuesta para las personas que verán la pregunta después.
La mejor manera de cambiar el estado en JQuery ahora es a través de
Consulte este enlace para ver una ilustración completa. ¿Deshabilitar / habilitar una entrada con jQuery?
fuente
Lo hubiera hecho un poco diferente
Aviso de atributo de clase
De esta manera, si necesita agregar más botones de opción, no debe preocuparse por cambiar el javascript
fuente
Supongo que probablemente desee vincular un evento de "clic" a varios botones de opción, leer el valor del botón de opción seleccionado y, según el valor, deshabilitar / habilitar una casilla de verificación o una casilla de texto.
fuente
Perdón por llegar tan tarde a la fiesta, pero veo que hay margen de mejora aquí. No se trata de "desactivar cuadro de texto", sino de la selección de radionbox y la simplificación del código, lo que lo hace un poco más a prueba de futuro, para cambios posteriores.
En primer lugar, no debe usar .each () y usar el índice para señalar un botón de opción específico. Si trabaja con un conjunto dinámico de botones de opción o si agrega o elimina algunos botones de opción posteriormente, ¡su código reaccionará con el botón incorrecto!
A continuación, pero ese no fue probablemente el caso cuando se hizo el OP, prefiero usar .on ('click', function () {...}) en lugar de click ... http: //api.jquery. com / on /
En primer lugar, pero no menos importante, también el código podría hacerse más simple y a prueba de futuro seleccionando el botón de opción en función de su nombre (pero que ya apareció en una publicación).
Así que terminé con el siguiente código.
HTML (basado en el código de okw)
Código JS
fuente
MVC 4 @ Html.CheckBoxPor lo general, la gente quiere actuar al marcar y desmarcar la casilla de verificación mvc.
puede definir la identificación de los controles que desea cambiar y en javascript hacer lo siguiente
también puede cambiar la propiedad como
fuente
Mostrar fragmento de código
fuente
obtenga el valor de los botones de radio y coincida con cada uno si es 3 y luego está desactivado
checkbox and textbox
.fuente