Hola, tengo un problema, y es que cuando utilizaba la versión anterior de xajax, la 0.2 podía hacer cosas como esta:
Código PHP:
require('xajax/xajax.inc.php');
$xajax = new xajax();
function mostrar(){
$salida = "hola!";
$respuesta = new xajaxResponse();
$respuesta->addAssign('campo1','innerHTML', $salida);
return $respuesta;
}
$xajax->registerFunction('mostrar');
$xajax->processRequests();
?>
<html>...
<head><title>...</title>
<?php $xajax->printJavascript('xajax/'); ?>
</head>
<body>
<div id='campo1'></div>
<?php
echo "<p onclick='xajax_mostrar();'>Clickear aquí</p>";
?>
</body>
</html>
Y metía en el 'campo1' el text 'hola!'.
Sin embargo en xajax 0.5, cambiando la nomenclatura y haciendo lo mismo no responde. Sería algo así:
Código PHP:
<?php
require('xajax5/xajax_core/xajax.inc.php'); //ruta relativa al documento
$xajax = new xajax();
$xajax->configure('javascript URI','xajax5/');//ruta relativa al documento
function mostrar(){
$salida = "hola!";
$respuesta = new xajaxResponse();
$respuesta->assign('campo1','innerHTML',$salida);
return $objResponse;
}
$mostrar =& $xajax->registerFunction('mostrar');
$xajax->processRequest();
?>
<html>...
<head><title>...</title>
<?php $xajax->printJavascript(); ?>
</head>
<body>
<div id='campo1'></div>
<?php
echo "<p onclick='$mostrar->printScript();'>Clickear aquí</p>";
?>
</body>
</html>
Sin embargo si lo escribo en HTML:
Código PHP:
<p onclick='<?php $mostrar->printScript(); ?>;'>Clickear aquí</p>
Sí que funciona.
Lo cierto es que necesito meter los códigos desde PHP a través de sentencias "echo", y no veo solución...
...a parte de hacerlo con la versión anterior de xajax, pero no creo que esa sea la mejor solución.
A ver si me podéis echar una mano, que ando un poco apurado.
¡Un saludo!