Diseñé una sección de comentarios con una respuesta. Quiero que se cree un formulario de comentarios bajo el mismo comentario cuando el usuario haga clic en el botón de respuesta. Escribí esto yo mismo, pero cuando hago clic en el botón de respuesta, el formulario se crea solo para el primer comentario.
function addtextbox() { // Create a form dynamically. var form = document.createElement("form"); form.setAttribute("method", "post"); form.setAttribute("action", "submit.php"); // Create an input element for replyText. var ID = document.createElement("input"); ID.setAttribute("type", "text"); ID.setAttribute("name", "body"); ID.setAttribute("placeholder", "Your Comment"); form.append(ID); document.getElementsByClassName('formbox')[0].appendChild(form); } <button onclick="addtextbox()">reply</button> <div class="formbox"></div>hay muchas maneras, pero esta es la más simple. buena suerte ;)
const replayButtons = document.querySelectorAll('.replay'); replayButtons.forEach(item => { item.addEventListener('click', () => { item.parentElement.insertAdjacentHTML('beforeend', ` <input type="text" placeholder="write your replay" /> `); }); }) <div> <h1>Post1</h1> <p>Lorem ipsum dolor sit.</p> <br> <button class="replay">Replay</button> <br> </div> <div> <h1>Post2</h1> <p>Lorem ipsum dolor sit.</p> <br> <button class="replay">Replay</button> <br> </div> <div> <h1>Post3</h1> <p>Lorem ipsum dolor sit.</p> <br> <button class="replay">Replay</button> <br> </div>