Foros del Web » Programando para Internet » Javascript »

Activar o desactivar checkbox dependiendo del otro

Estas en el tema de Activar o desactivar checkbox dependiendo del otro en el foro de Javascript en Foros del Web. Buenas a todos, tengo un problema,quiero conseguir la funcionalidad del radiobutton con los checkbox. El problema que me lo hace bien de c2 a c1 ...
  #1 (permalink)  
Antiguo 15/04/2013, 14:05
 
Fecha de Ingreso: abril-2012
Mensajes: 42
Antigüedad: 11 años, 11 meses
Puntos: 1
Activar o desactivar checkbox dependiendo del otro

Buenas a todos, tengo un problema,quiero conseguir la funcionalidad del radiobutton con los checkbox.

El problema que me lo hace bien de c2 a c1 pero a la inversa no hace nada, se queda como bloqueado.

Este es mi html

Código HTML:
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <script src="newjavascript.js" type="text/javascript"></script>
        <title>Prueba</title>
    </head>
    <body>
        <h1>Hola</h1>
        <p> Pulsa aqui para realizar una acción</p>
        <div id="grupoCheckBox">
            <p>C1</p>
            <input type="checkbox" id="check1" onclick="saludar();">
            <p>c2</p>
            <input type="checkbox" id="check2" onclick="saludar();"> 
        </div>
        <br>
        <br>
        <br>
        <br>
        <INPUT TYPE="BUTTON" VALUE="Guardar registro">
    </body>

</html> 

y este mi javascript

Código:
function saludar() {
    var checkbox1 = document.getElementById("check1");
    var checkbox2 = document.getElementById("check2");

    if (checkbox1.checked == true) {
        checkbox2.checked = false;
    }else if(checkbox2.checked == true){
        checkbox1.checked =false;
    }
   
}

Muchas gracias.
  #2 (permalink)  
Antiguo 15/04/2013, 15:16
Avatar de chwc  
Fecha de Ingreso: julio-2008
Ubicación: Buenos Aires ! :D
Mensajes: 814
Antigüedad: 15 años, 8 meses
Puntos: 103
Respuesta: Activar o desactivar checkbox dependiendo del otro

Bueno ! es bastante interesante tu problema, ahora vamos a sacar el jugo del problema
que pasa cuando apretamos C2 y C1 esta checked

-- > C2 pasa a estar checked => true
-- > se ejecuta la funcion saludar
Cita:
function saludar() {
var checkbox1 = document.getElementById("check1"); // true
var checkbox2 = document.getElementById("check2"); // true

if (checkbox1.checked == true) { // si, se ejecuta
checkbox2.checked = false; // checkbox 2 se vuelve a false
}else if(checkbox2.checked == true){ // es un else, no se ejecuta
checkbox1.checked =false;
}

}
asi, que se ejecuta, pero vuelve a su estado inicial

hize una adaptación para pasarle el dato de que checkbox era
aca esta andando
http://codepen.io/anon/pen/hvbGd

un saludo :) y buena vibra :D
  #3 (permalink)  
Antiguo 15/04/2013, 15:19
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: Activar o desactivar checkbox dependiendo del otro

Así funcionará:
Código Javascript:
Ver original
  1. function saludar(obj) {
  2.     document.getElementById("check1").checked = false;
  3.     document.getElementById("check2").checked = false;
  4.     obj.checked = true;
  5. }
Código HTML:
Ver original
  1. <input type="checkbox" id="check1" onclick="saludar(this);">
  2. <input type="checkbox" id="check2" onclick="saludar(this);">
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.

Etiquetas: checkbox, dependiendo, desactivar, funcion, html, input, js
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:33.