Estoy tratando de obtener una página diferente, preview.php para mostrar cuando se hace clic en el botón de vista previa, cambiando la acción del formulario. El botón de vista previa debería conducir a otra página donde pueda ver las entradas del archivo y tal vez tenga opciones para enviar o volver.
Los otros botones, enviar y borrar funcionan, sin embargo, el botón de vista previa no parece funcionar. Permanece en la misma página incluso después de hacer clic en el botón.
Como prueba puse algunas alertas. Las alertas 'here1' y 'here2' funcionan, pero la alerta 'here3' no funciona, lo que me hace creer que no se alcanza la función changeAct(). ¿Cómo puedo arreglar esto para que la acción del formulario se pueda cambiar?
const wrapper = document.getElementById('blog-btn'); wrapper.addEventListener('click', (event) => { const btn = event.target.nodeName === 'BUTTON'; if (!btn) { return; } else { processClick(event.target.id) } }); function processClick(id) { alert("Id is "+ id); if(id == "pre") { alert("here 1"); document.getElementById('pre').addEventListener('click', changeAct); alert("here 2"); } } function changeAct() { alert("here 3"); document.getElementById('frm1').action="preview.php"; } <form id="frm1" name="post_form" action="addEntry.php" method="post"> <div id="blog-btn"> <!--Post & Clear Form Buttons--> <button type="button" value="Preview" id="pre" >PREVIEW</button> <button type="submit" value="Submit" id="sub">SUBMIT</button> <button type="reset" value="Reset" id="clear">CLEAR</button> </div> </form>