para enviar con ajax seria algo asi:
Código Javascript
:
Ver originalfunction objetoAjax(){
var xmlhttp = false;
try {
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
} catch (E) {
xmlhttp = false; }
}
if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
xmlhttp = new XMLHttpRequest();
}
return xmlhttp;
}
function enviar(){
//Recogemos los valores introducimos en los campos de texto
nombre = document.form.nombre.value;
ciudad = document.form.ciudad.value;
//Aquí será donde se mostrará el resultado
resultado = document.getElementById('resultado');
//instanciamos el objetoAjax
ajax = objetoAjax();
//Abrimos una conexión AJAX pasando como parámetros el método de envío, y el archivo que realizará las operaciones deseadas
ajax.open("POST", "enviar.php", true);
//cuando el objeto XMLHttpRequest cambia de estado, la función se inicia
ajax.onreadystatechange = function() {
//Cuando se completa la petición, mostrará los resultados
if (ajax.readyState == 4){
//El método responseText() contiene el texto de nuestro 'consultar.php'. Por ejemplo, cualquier texto que mostremos por un 'echo'
resultado.innerHTML = (ajax.responseText)
}
}
//Llamamos al método setRequestHeader indicando que los datos a enviarse están codificados como un formulario.
ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
//enviamos las variables a 'enviar.php'
ajax.send("&nombre="+nombre+"&ciudad="+ciudad)
}
Código HTML:
Ver original<form name="form" action="" onSubmit="enviar(); return false"> <input type="text" name="nombre"/><br> <input type="text" name="ciudad"/><br>
<input type="submit" value="Enviar"/>
el codigo ajax debe estar en pa pagina donde este el formulario, en tu caso deberas colocarlo en la pagina principal donde esta el DIV que carga el form.
En el DIV de resultado se va a cargar la informacion que imprimas desde tu php, ejemplo:
Código PHP:
Ver original//si el mensaje fue enviado
if($mail){
echo "Mensaje Enviado con éxito";
} else{
echo "Mensaje no enviado";
}
lo que esta en los echo es lo que va a cargar el ajax en el div de resultado, saludos.!