Tengo dos botones de opción para cambiar el evento, quiero cambiar el botón ¿Cómo es posible? Mi código
<input type="radio" name="bedStatus" id="allot" checked="checked" value="allot">Allot
<input type="radio" name="bedStatus" id="transfer" value="transfer">Transfer
Guión
<script>
$(document).ready(function () {
$('input:radio[name=bedStatus]:checked').change(function () {
if ($("input[name='bedStatus']:checked").val() == 'allot') {
alert("Allot Thai Gayo Bhai");
}
if ($("input[name='bedStatus']:checked").val() == 'transfer') {
alert("Transfer Thai Gayo");
}
});
});
</script>

if($("input[name='bedStatus']:checked").val() == 'allot')se puede escribirif($("input[name='bedStatus']").val() == 'allot')Respuestas:
Puede usar el
thisque se refiere alinputelemento actual .http://jsfiddle.net/4gZAT/
Tenga en cuenta que está comparando el valor con
allotcon las declaraciones if y:radioselector están en desuso.En caso de que no esté usando jQuery, puede usar los métodos
document.querySelectorAllyHTMLElement.addEventListener:fuente
:radioselector no está en desuso (en jQuery).thisvalor o desea utilizar elthisvalor de contexto circundante en su controlador, utiliza este fragmentothis. ¡Y afirmar que usar funciones regulares es "vieja mala práctica" no tiene sentido! Además, los navegadores más antiguos no son compatibles con la sintaxis de la función de flechaArray#includesy uno debe usar un transpilador y una cuña para admitir navegadores más antiguos. ¿Por qué hacer una respuesta simple que no tiene nada que ver específicamente con las funciones de flecha complicadas?this, yo usoevent.target.Una adaptación de la respuesta anterior ...
http://jsfiddle.net/xwYx9
fuente
.on()realmente tiene ganancias en relación con lo anterior, sin embargo, al tener en cuenta los selectores dinámicos, seguramente es la única forma de ir en jQuery 1.7+ontiene ganancias cuando proporciona un contexto para la delegación de eventos, o incluso para selectores dinámicos como dijo, pero la forma en que lo escribió es exactamente la misma que la respuesta anterior.Una forma más simple y limpia sería usar una clase con la respuesta de @ Ohgodwhy
Guión
fuente
JS Fiddle
fuente
$(this).is(":checked")usarthis.checked. Es puro JS y es mucho más rápido.Usar la función onchage
fuente
Solución simple ES6 (solo javascript) .
fuente
fuente
fuente
Si los botones de opción se agregan dinámicamente, es posible que desee utilizar esto
fuente
fuente