Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
1
respuesta

Duda respecto a uso de método "setAttribute()"

Hola, hice el ejercicio como está en el video, y me funcionó bien.

Mi pregunta es sobre una duda que me surgió viendo el video.

En aproximadamente 9:30 del video, el profesor muestra el uso del método setAttribute, para que el botón se deshabilite mientras estamos jugando.
Lo hace así:
document.querySelector('#reiniciar').setAttribute('disabled', true)

Mi pregunta es: ¿no puedo utilizar la misma función para activar el botón?
En la clase correspondiente, se mostró que para activar el botón en caso que hubieramos acertado el número y quisieramos jugar nuevamente, había que escribir:
document.getElementById('reiniciar').removeAttribute('disabled');

Yo no podría escribir:
document.querySelector('#reiniciar').setAttribute('disabled', false)
es decir poner como false el atributo disabled así se activaría.

Lo probé y no me salió pero no sé si es porque yo estoy escribiendo algo mal, o directamente no es así como debe usarse.

Gracias de antemano por la ayuda!

1 respuesta

Interesante observacion la verdad yo tambien intente hacer lo mismo pero tope con pared JAJAJAJA, haciendo unas busquedas me di cuenta que los atributos de HTML funcionan de una manera un poco particular, Los atributos booleanos en HTML, como disabled, checked, o readonly, no funcionan con valores true o false en el sentido de un lenguaje de programación. Su simple presencia en la etiqueta HTML es lo que los activa. Para deshabilitar el botón, el navegador solo necesita ver el atributo disabled. Por eso, setAttribute('disabled', true) funciona, ya que estamos agregando el atributo disabled a la etiqueta del botón. El valor true se convierte en una cadena de texto, y lo que importa es que el atributo disabled este presente en el boton. Para habilitar el botón, no basta con asignarle un valor false. Lo que se necesita es eliminar por completo el atributo disabled de la etiqueta.
Por eso, el método removeAttribute('disabled') es la forma correcta de hacerlo. Este método le dice al navegador que borre la propiedad disabled del elemento, haciendo que el botón vuelva a su estado normal.