Hola, esto se hace demasiado fácil,
te mostraré un ejemplo con paises y departamentos:

En la vista pones los selects de pais y departamento:

echo $this->Form->input('pais_id',
array('div'=>array('id'=>'VentaSelectPais', 'class'=>'flotar',))); //select
pais
echo $this->Form->input('departamento_id', array('div'=>'flotar',
'div'=>array('id'=>'VentaSelectDepartamento', 'class'=>'flotar')));
//select departamento

echo $ajax->observeField('VentaPaisId', array(

'frequency' => '1',

'update' => 'VentaSelectDepartamento',

'url' => array('controller' => 'departamentos', 'action' =>
'select_departamentos','Venta')

)); //cuando se hace un onChange en la lista paises se va al
action select_departamentos del controller departamentos, enviando por get
el modelo

Tambien debes poner en el controller el helper ajax para que te funcione el
observeField, asi:
var $helpers = array('Ajax');

y en el controller departamentos tienes esto:
function select_departamentos($model=null){
Configure::write('debug', 0);
$departamentos = $this->Departamento->find('list', array(
'conditions'=>array('Departamento.pais_id'=>$this->data[$model]['pais_id'])
));
$this->layout = 'ajax';
$this->set(compact('departamentos', 'model'));
}

y en la vista select_depatamentos pones lo siguiente:

echo $this->Form->input("$model.departamento_id", array('div'=>null,
'options'=>$departamentos));

Cuentame como te va.

Suerte.
El 12 de julio de 2012 23:31, Miguel Leugim <leugi...@gmail.com> escribió:

> http://cakephp.hospedaxes.com/actualizar-el-contenido-de-un-select-con-ajax
>
> http://www.jamesfairhurst.co.uk/posts/view/using_ajax_to_populate_a_select_box_in_cakephp/
>
> El día 12 de julio de 2012 15:29, RTJ <jenea....@gmail.com> escribió:
> > Hola a todos,
> > llevo muy poco tiempo con CakePHP, y me estoy preguntando cual seria la
> > forma mas fácil de hacer un Combobox Dinámico con Regiones -> Ciudades ->
> > Pueblos  con CakePHP?
> > Como ejemplo tendrá 3 tablas en la base de datos ( Regiones, Ciudades,
> > Pueblos )
> > y tendrían 3 campos.
> > ej: tablas
> > regiones: id, nombre
> > ciudades: id, nombre, regionid
> > pueblos: id, nombre, ciudadesid
> >
> > Que CakePHP en la vista al seleccionar la región que me cargue en la
> lista
> > las ciudades que pertenecen a esta región y al seleccionar la ciudad que
> me
> > cargue los pueblos de esta ciudad en la lista pueblos.
> >
> > Lógicamente todo debe realizarse sin actualizar la pagina :) normalmente
> > programo todo en php puro y para estas cosas uso ajax o jquery pero me
> > gustaría ver un ejemplo de como se podría hacer esto en CakePHP.
> >
> > Ya que estoy entre varios framework y viendo cosillas :) este ya es lo
> > ultimo que por fin me ayudara a elegir un framework de los 3
> (yiiframework,
> > cakephp o fuelphp )
> > Muchas gracias de antemano.
> >
> > --
> > Has recibido este mensaje porque estás suscrito al grupo "CakePHP-es" de
> > Grupos de Google.
> > Para ver este debate en la Web, visita
> > https://groups.google.com/d/msg/cakephp-es/-/jJ_pGvmS5U4J.
> > Para publicar una entrada en este grupo, envía un correo electrónico a
> > cakephp-es@googlegroups.com.
> > Para anular tu suscripción a este grupo, envía un correo electrónico a
> > cakephp-es+unsubscr...@googlegroups.com
> > Para tener acceso a más opciones, visita el grupo en
> > http://groups.google.com/group/cakephp-es?hl=es.
>
> --
> Has recibido este mensaje porque estás suscrito al grupo "CakePHP-es" de
> Grupos de Google.
> Para publicar una entrada en este grupo, envía un correo electrónico a
> cakephp-es@googlegroups.com.
> Para anular tu suscripción a este grupo, envía un correo electrónico a
> cakephp-es+unsubscr...@googlegroups.com
> Para tener acceso a más opciones, visita el grupo en
> http://groups.google.com/group/cakephp-es?hl=es.
>
>

-- 
Has recibido este mensaje porque estás suscrito al grupo "CakePHP-es" de Grupos 
de Google.
Para publicar una entrada en este grupo, envía un correo electrónico a 
cakephp-es@googlegroups.com.
Para anular tu suscripción a este grupo, envía un correo electrónico a 
cakephp-es+unsubscr...@googlegroups.com
Para tener acceso a más opciones, visita el grupo en 
http://groups.google.com/group/cakephp-es?hl=es.

Responder a