get_genre_value=this.value; //setting value of current check box to get_genre_value. Aquí había declarado globalmente var get_genre_value; que es necesario para mi proyecto y estoy tomando el valor de get_genre_value al hacer clic en el botón. Seleccionar el valor de la casilla de verificación y obtenerlo fue fácil, pero ¿cómo puedo establecer el valor en nulo para get_genre_value si no se selecciona ninguna casilla? Esto me hizo pensar mucho, ya que get_genre_value usará su valor almacenado globalmente si intento hacer clic en el botón en segundo lugar tiempo sin seleccionar ninguna casilla de verificación, cualquier ayuda sería muy apreciada.
Aquí hay un ejemplo de cómo hacerlo: establece get_genre_value en null al principio. Para cada casilla de verificación, agrega un EventListener. En la devolución de llamada, marca, si la casilla de verificación está marcada:
null si no se marcó ninguna casilla de verificación antes) y establece get_genre_value en el valor de la casilla de verificaciónnull nuevamente let get_genre_value = null; const checkboxes = document.querySelectorAll("input[name=select]"); checkboxes.forEach((checkbox) => { checkbox.addEventListener("change", (event) => { if (event.target.checked) { const checkedbefore = document.querySelector(`input[name=select][value=\"${get_genre_value}\"]`); if (checkedbefore !== null) checkedbefore.checked = false; get_genre_value = event.target.value; } else { get_genre_value = null; } console.log(get_genre_value); }); }); <input type="checkbox" name="select" value="1"> <input type="checkbox" name="select" value="2"> <input type="checkbox" name="select" value="3"> <input type="checkbox" name="select" value="4">