aniMAYtions gracias por la respuesta. Te comento, empecé a hacer un código propio. Con otro ejemplo que no son provincias y estados, sino países y equipos de fútbol.
Mis código son estos:
Generador del select de equipos
Código PHP:
Ver originalfunction getEquipo($id_pais){
$respuesta = new xajaxResponse('ISO-8859-1');
$query = "SELECT e.idequipo, e.nombre FROM Equipo e WHERE e.idPais = $id_pais";
$new_select = "<select name='equipo'>";
$new_select .= "<option value='".$row[0]."'>".htmlentities($row[1])."</option>"; }
$new_select .= "</select>";
$respuesta->addAssign("equipoDiv","innerHTML",$new_select);
return $respuesta;
}
Head del html
Código HTML:
Ver original <meta http-equiv="content-type" content="text/html;charset=utf-8" /> <meta name="generator" content="Geany 0.19.1" /> <?php
include('xajax/xajax.inc.php');
$xajax = new xajax();
$xajax->setCharEncoding('ISO-8859-1');
$xajax->decodeUTF8InputOn();
include('bd.php');
conectar();
//asociamos la función creada anteriormente al objeto xajax
$xajax->registerFunction("getEquipo");
//El objeto xajax tiene que procesar cualquier petición
$xajax->processRequests();
$xajax->printJavascript("xajax/");
?>
Form en cuestión.
Código HTML:
Ver original<form name="pais_equipo"> <select name="pais" onchange="xajax_getEquipo(this.value)"> <?php getPais(); ?>
No sé si me estará faltando algun adeclaración. Ando medio perdido, pero al seleccionar un país e intentar pinchar el select de equipos me devuelve el siguiente error a modo de alert():
Error: the XML response that was returned from the server is invalid.
Received:
Cita: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>Select dependientes - Xajax!</title>
<meta http-equiv="content-type" content="text/html;charset=utf-8" />
<meta name="generator" content="Geany 0.19.1" />
<?xml version="1.0" encoding="ISO-8859-1" ?><xjx><cmd n="as" t="equipoDiv" p="innerHTML"><![CDATA[<select id='equipo'><option
value='16'>Manchester City</option><option value='17'>Manchester United</option><option value='18'>Tottenham Hotspurs</
option><option value='19'>Sunderland</option></select>]]></cmd></xjx>
Al parecer la consulta se genera bien, pero no entiendo por qué no genera el nuevo select :(