Gracias por leer esteUsando jQuery, cómo localizar un elemento cuando el nombre y valor son conocidos
pensé que podía usar find(), pero no pudo hacer que funcione. Sé que puedo agregar ID o nombres de clase, pero me gustaría saber cómo hacerlo con el marcado actual.
Gracias
Aquí está el código HTML
<input name="keywordCheckbox" type="checkbox" value="S" />
<input name="keywordCheckbox" type="checkbox" value="C" />
<input name="keywordCheckbox" type="checkbox" value="A" />
y el js
<script language="Javascript" src="javascript/jquery-1.2.6.min.js"></script>
<script type="text/JavaScript">
$(function(){
$('[name="keywordCheckbox"]').bind("click",
function() {
if($(this).attr("checked") == true) {
switch(this.value) {
case "A":
var $_this = $(this) ;
$('[name="keywordCheckbox"]').each(function() {
if($(this).val() != $($_this).val()) { $(this).attr("checked",false); }
});
break ;
default:
DOESN'T WORK --> $('[name="keywordCheckbox"]').find('[value="A"]').attr("checked", false);}
} // END Switch
} // END If
}); // End BIND
}); // End eventlistener
</script>
¿Puede explicar lo que está tratando de hacer? Creo que está intentando desmarcar la casilla de verificación con el valor 'A', pero no es así como se hace. Compruebe http://docs.jquery.com/Attributes/attr#keyvalue – knuton
lo siento, puedo ver cómo no estaba claro. Creo que mi respuesta aclara mi intención. ¿Estabas diciendo que la forma en que desactivo la entrada es incorrecta? Me interesaría tu solución ... el enlace no me dio otra solución –
Sí. El código que usó en la línea que marcó con "NO FUNCIONA" en el origen anterior no puede funcionar, ya que sé que no hay ningún atributo o método _false_ en el objeto que devuelve attr (name). La forma en que lo haces en la solución que publicaste a continuación con attr (clave, valor) es lo que quise sugerir. – knuton