Llamada de la funcion al formulario (lo hace bien)
Código HTML:
 <li><a class="nivel1" href="#" onclick="return principal('./cuenta/prueba.php','mainContent');">Login</a></li>
Código:
  
function principal(pagina,divID)
{
	var XMLHttpRequestObject = false;
	if (window.XMLHttpRequest) 
	{
		XMLHttpRequestObject = new XMLHttpRequest();
	} 
	else if (window.ActiveXObject) 
	{
		XMLHttpRequestObject = new ActiveXObject("Microsoft.XMLHTTP");
	}	
	if(XMLHttpRequestObject)
		{
			var mostrar = document.getElementById(divID);
			XMLHttpRequestObject.open("GET", pagina, true);
			XMLHttpRequestObject.onreadystatechange = function()
			{
				if (XMLHttpRequestObject.readyState == 4 && XMLHttpRequestObject.status == 200) 
				{
					mostrar.innerHTML = XMLHttpRequestObject.responseText;
				}
			}
		
	   XMLHttpRequestObject.send(null);
		}
}
El formulario, este es el de desarrolloweb, es con el que estoy haciendo pruebas, por si solo funciona,cuando lo cargo con la funcion principal no.
Código PHP:
   <?php
//incluímos la clase ajax
require ('xajax/xajax_core/xajax.inc.php');
 
//instanciamos el objeto de la clase xajax
$xajax = new xajax();
 
function procesar_formulario($form_entrada){
$salida = "Gracias por enviarnos tus datos. Hemos procesado esto:<p>";
$salida .= "Nombre: " . $form_entrada["nombre"];
$salida .= "<br>Apellidos: " . $form_entrada["apellidos"];
 
//instanciamos el objeto para generar la respuesta con ajax
$respuesta = new xajaxResponse();
//escribimos en la capa con id="respuesta" el texto que aparece en $salida
$respuesta->assign("mensaje","innerHTML",$salida);
 
//tenemos que devolver la instanciación del objeto xajaxResponse
return $respuesta;
}
//registramos la función creada anteriormente al objeto xajax
$xajax->registerFunction("procesar_formulario");
 
//El objeto xajax tiene que procesar cualquier petición
$xajax->processRequest();
?>
<html>
<head>
<title>Enviar y procesar un formulario con Ajax y PHP</title>
<?php
//En el <head> indicamos al objeto xajax se encargue de generar el javascript necesario
$xajax->printJavascript("xajax/");
?>
</head>
 
<body>
<h1>Recibir y procesar formulario con Ajax y PHP</h1>
<div id="mensaje">
<form id="formulario">
Nombre: <input type="text" name="nombre">
<br>
Apellidos: <input type="text" name="apellidos">
<br>
<input type="button" value="Enviar" onclick="xajax_procesar_formulario(xajax.getFormValues('formulario'))">
</form>
</div>
 
</body>
</html>   
 
