$xajax->register(XAJAX_FUNCTION, 'nombre_de_la_funcion');
Métodos de la clase xajaxResponse
La mayoría de los métodos de xajaxResponse han cambiado. Han suprimido una parte que se consideraba confusa en los nombres de métodos. Resulta que muchos comenzaban por add y se ha quitado. Por ejemplo xajaxResponse->addAssign() ahora es xajaxResponse->assign();
Ejemplo de actualización de script Xajax
Ahora voy a hacer una actualización de un script que había creado anteriormente en el manual con Xajax 0.2 a Xajax 0.5. Es un script para hacer selects combinados que vimos en el artículo Selects combinados con Ajax y PHP. Os recomiendo leer el artículo para entender lo que hace el script, que no lo voy a explicar aquí.
Simplemente voy a colocar aquí el código nuevo, marcando en negrita, para que queden bien claros los cambios que he realizado.
<?
//incluímos la clase ajax
require ('xajax/xajax_core/xajax.inc.php');
//instanciamos el objeto de la clase xajax
$xajax = new xajax();
$xajax->setCharEncoding('ISO-8859-1');
$xajax->configure('decodeUTF8Input',true);
function select_combinado($id_provincia){
$madrid = array("Madrid", "Las Rozas", "Móstoles", "San Sebastián de los Reyes");
$valencia = array("Valencia", "La Eliana", "Paterna", "Cullera");
$barcelona = array("Barcelona", "Badalona");
$leon = array ("León", "Astorga", "Villamejil");
$poblaciones = array($madrid, $valencia, $barcelona, $leon);
$nuevo_select = "<select name='poblaciones'>";
for ($i=0; $i<count($poblaciones[$id_provincia]); $i++){
//for ($i=0; $i<2; $i++){
$nuevo_select .= '<option value="' . $i . '">' . $poblaciones[$id_provincia][$i] . '</option>';
}
$nuevo_select .= "</select>";
return $nuevo_select;
}
function generar_select($cod_provincia){
$respuesta = new xajaxResponse();
$respuesta->setCharacterEncoding('ISO-8859-1');
if ($cod_provincia==999){
$nuevo_select = '<select name="poblaciones">
<option value=0>Elegir provincia</option>
</select>
';
}else{
$nuevo_select = select_combinado($cod_provincia);
}
$respuesta->Assign("seleccombinado","innerHTML",$nuevo_select);
return $respuesta;
}
$xajax->register(XAJAX_FUNCTION, 'generar_select');
//El objeto xajax tiene que procesar cualquier petición
$xajax->processRequest();
?>
<html>
<head>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<META HTTP-EQUIV="Content-Type" CONTENT="text/html;charset=ISO-8859-1">
<title>Selects combinados en PHP y Ajax - Desarrolloweb.com</title>
<?
//Esta línea no cambia porque el printJavascript sigue recibiendo
//la ruta a la carpeta raíz donde están las librerías xajax.
$xajax->printJavascript("xajax/");
?>
</head>
<body>
<form name="formulario">
Provincia:
<br>
<select name="provincia" onchange="xajax_generar_select(document.formulario.provincia.options[document.formulario.provincia.selectedIndex].value)">
<option value="999">Selecciona la provincia</option>
<option value=0>Madrid</option>
<option value=1>Valencia</option>
<option value=2>Barcelona</option>
<option value=3>León</option>
</select>
<br>
<br>
Selecciona Población: <div id="seleccombinado">
<select name="poblaciones">
<option value=0>Elegir provincia</option>
</select>
</div>
</form>
Por DesarrolloWeb.com!
</body>
</html>
Este ejemplo de Xajax 0.5 se puede ver en marcha en una página aparte.
Para una referencia completa de funciones que han cambiado de Xajax 0.2 a Xajax 0.5 podemos visitar el artículo que había comentado antes de la documentación de Xajax, que contiene abajo del todo un listado de referencia rápida de funciones nuevas y antiguas.
| Por: NiñoPerro | 29/9/08
|
| Por: Befranel | 16/10/08
|
| Por: Carlos | 07/11/08
|
| Por: Ali | 11/11/08
|