Puedo actualizar fácilmente el html cuando no es parte del botón o envío del formulario. O incluso cuando es solo un elemento de botón puro (en lugar de una entrada de un formulario). Sin embargo, cuando trato de agregar una cadena al
clase "chatGoesHere", no pasa nada. La consola también se recarga rápidamente ya que el formulario va a enviar.
Estoy feliz de publicar mis views.py y urls.py, sin embargo, estoy bastante seguro de que el problema está dentro de mi documento html a continuación:
<p class="chatGoesHere" id="chatGoesHere"> 1st Item! </p> <form action="\send\" method="post"> <input type="text" name="userMessage" /> <input type="submit" value="Send to smallest_steps bot" class="sendButt" id="sendButt" /> </form> <script> var btn = document.getElementById("sendButt"); btn.addEventListener("click", updateChat); function createMenuItem(name) { let li = document.createElement('p'); li.textContent = name; return li; } const td = document.getElementById('chatGoesHere'); td.appendChild(createMenuItem("TEST2")) function updateChat(){ const td = document.getElementById('chatGoesHere'); td.appendChild(createMenuItem("TEST3")) } </script>Me gustaría que cada vez que un usuario presione el botón de enviar del formulario, se agregue algo a la página sin recargar la página.
Gracias
Necesitas usar django con sockets.
Echa un vistazo a este recorrido.
¡Me ayudó a hacer lo mismo hace unos años!
https://channels.readthedocs.io/en/stable/tutorial/part_2.html