Tengo una página de perfil y hay un botón de edición. Cuando hago clic en el botón editar, puede editar la información en la página.
La cuestión es que el segundo detector de eventos no funcionará cuando haga clic en el botón Listo que aparece después de hacer clic en el botón Editar, nada cambia.
```const editButton = document.querySelector('.edit-btn'); const doneButton = document.querySelector(".done-btn"); const textBox = document.querySelector('.txt-box'); const textArea = document.querySelector('.description'); const pwbox = document.querySelector('.pw-box'); const dateBox = document.querySelector(".date-joined");``` editButton.addEventListener('click', e => { textBox.removeAttribute('readonly'); textArea.removeAttribute('readonly'); textBox.style.borderBottom = '1px gray solid'; pwbox.style.display = "flex"; doneButton.style.display = "block"; editButton.style.display = 'none'; dateBox.style.display = "none"; }); doneButton.addEventListener('click', e => { textBox.setAttribute("readonly"); textBox.style.removeProperty('background color'); textBox.style.removeProperty('border-bottom'); pwbox.style.display = "none"; doneButton.style.display = "none"; editButton.style.display = 'block'; dateBox.style.display = "flex"; }); <div class="infobox"> <input type="text" name="uname" class="uname txt-box" value="<?php echo $usersName ?>" readonly autocomplete="off"> <input type="text" name="email" class='email' value="<?php echo $usersEmail ?>" readonly> <div class="pw-box"> <label for="password">Password</label> <input type="password" name="password" class="password"> <label for="confirmPassword">Confirm Password</label> <input type="password" name="conf-password" class="conf-password"> </div> <div class=" date-joined"> <small>Date Joined</small> <div>01/01/01</div> </div> </div> <div class="description-box"> <textarea name="description" class="description" cols="30" rows="10" placeholder="Let me describe you!" readonly></textarea> <button class='edit-btn'>Edit</button> <button class="done-btn">Done</button> </div>El problema es el .setAttribute en mi archivo js, necesita 2 parámetros en lugar de uno. Gracias por ayudar
Debe establecer el atributo de solo lectura en verdadero
textBox.setAttribute("readonly", true);En lugar de usar un detector de eventos, probablemente podría usar esto y llamar a una función al hacer clic en el botón <input type="button" class="button" onclick="editFunction()" value="Edit" />