Cita:
Iniciado por domichis
No eres de gran ayuda. Creo que no leiste bien mi problema
Lo que te dice
caricatos, es correcto. Si intentas tomar el valor del campo de
id
'zipcode', pues debe de existir uno en el DOM, pero no se encuentra en lo que nos has mostrado. Al formulario no tienes que agregarle nada más que los campos que ya tienes para poder realizar una petición Ajax, mucho menos a sus campos. Lo que buscas hacer solo involucra JavaScript y no al DOM, claro, excepto por la toma de valores, pero no pasa de ser algo referencial.
Lo que necesitas es relacionar al formulario con la llamada a la función que realiza la petición asíncrona para que así puedas enviar sus datos a través de la misma. Una forma práctica sería esta:
Código Javascript
:
Ver originalvar form = document.querySelector("form"); //Tomo al formulario
form.addEventListener("submit", function(event){ //Cuando se envíen los datos
event.preventDefault(); //Cancelo el envío del formulario
//Acá ejecutas tus funciones
}, false);
Con el método
preventDefault
, cancelo el envío del formulario, el cual es la acción
natural del evento
submit
; luego, solo te queda ejecutar tus funciones.
Por cierto, el método
escape
es obsoleto, en su lugar, utiliza el método
encodeURIComponent
. Además, no basta con que el estado de la petición indique que se haya completado la operación, también necesitas saber si el código de estado HTTP de la petición devuelto por el servidor, indique que la respuesta es correcta.
Saludos