Quiero cambiar el color de fondo según la respuesta Oculto la respuesta correcta en la etiqueta dentro de la página.
<label id="correctanswer" name="1" class="rb" style="display:none;">Tom</label> <label id="correctanswer" name="1" class="rb" style="display:none;">Liza</label>Tengo 2 preguntas en el código (verifique jsfiddle)
Quiero cambiar el color de fondo de las respuestas después de que el usuario haga clic en el botón "Enviar" después de marcar la respuesta relevante.
Pero incluso si el usuario elige la respuesta correcta, el color de fondo se vuelve rojo.
Además, no quiero que se vea así.
Solo el fondo de la respuesta elegida por el usuario debe ser verde o rojo, los demás colores no deben cambiar.
Por favor, compruebe los códigos;
Esto es complicado pero funciona, debería darle un enfoque más lógico.
Básicamente, recorrer todas las entradas marcadas y comparar las entradas del usuario con su respuesta correcta, luego cambiar su color de fondo...
$('#correctAnswer').click(function() { var checkedInputs = $(this).parents().find(":checked") checkedInputs.each(function() { var answer = $(this).parent().parent().parent().find('#correctanswer').text() if ($(this).val() === answer) { $(this).parent().addClass('confirmed') } else { $(this).parent().css('background-color','red') } }) });Le sugiero que use atributos de datos en lugar de clases e identificaciones para mejorar su organización