Listo, tengo una estructura de trabajo realizada de la siguiente manera:
Tengo un MainController, Un MainModel y un MainForm, pero aqui te explicare el funcionanmiento del MainController que es el que controlaria todo el manejo de xajax.
El MainController:
Código PHP:
include_once '../xajax/xajax_core/xajax.inc.php';
Class MainController {
public $ajax;
public $respuestaAjax;
public $debug_xajax;
public $waitCursor;
public $lib_xajax;
public $ruta_xajax;
public $reg_functions;
public function __construct(){
$this->init();
$this->ajax = new xajax();
$this->respuestaAjax = new xajaxResponse();
$this->regFunctions();
$this->ajaxLibrary();
}
public function init(){
;
}
protected function regFunctions(){
foreach($this->reg_functions as $function){
$this->ajax->registerFunction(array($function, &$this, $function));
}
$this->ajax->processRequest();
if(!$this->debug_xajax) $this->debug_xajax = false;
$this->ajax->setFlag('statusMessages',$this->debug_xajax);
$this->ajax->setFlag('waitCursor',$this->waitCursor);
}
protected function ajaxLibrary(){
$this->lib_xajax = $this->ajax->getJavascript($this->ruta_xajax)));
}
}
Listo, esto es el MainController.
Ahora configuramos la clase que va a extender el MainController asi:
Código PHP:
class IndexController extends MainController
{
protected $plantilla;
public function init(){
$this->plantilla = 'tu_plantilla.php';
$this->ruta_xajax = '../xajax/';
$this->debug_xajax = true;
$this->lib_xajax = 'xajax_javascript';
$this->waitCursor = false;
$this->reg_functions = array('functionPrueba');
}
public function index() {
// Aqui va el contenido de tu pagina cuando se carga por primera vez
$data = array(lib_ajax => $this->lib_xajax,main => true);
$this->Vistas->show($this->plantilla,$data);
}
public function functionPrueba(){
$var = 'texto de prueba para la vista';
//Para tu caso, podria ser asi:
return $this->respuestaAjax->assign('div_id','innerHTML',$this->Vistas->show($this->plantilla,$var));
}
y en la vista asi:
Código HTML:
<? if($data[main]) : ?>
<html>
<head>
<!-- incluimos la libreria xajax -->
<? if($data[lib_ajax]) echo $data[lib_ajax]; ?>
</head>
<body>
<div id="div_id"></div>
</body>
</html>
<? endif ?>
<? if($var) : ?>
este es el texto generado con xajax: <?= $var ?>
<? endif; ?>
Con esto te deberia funcionar.