function combos_estados() {
$data[''] = 'Seleccione';
$this->db->order_by('estado', 'asc');
$consulta = $this->db->get('estados');
foreach ($consulta->result() as $row) {
$data[$row->id] = ucwords(strtolower($row->estado));
}
return $data;
}
function combos_ciudade($cod) {
$this->db->select('id, ciudad');
$this->db->where('id', $cod);
$this->db->from('ciudades');
$query = $this->db->get();
foreach ($query->result() as $row) {
$data[$row->id] = ucwords(strtolower($row->ciudad));
}
echo $data[$row->id];
}
function ver_ciudades() {
$cod= $this->input->post('codigo');
$datos = $this->Localidades_model->combos_ciudades($cod);
$this->output->set_output($datos);
}
Y el Ajax con Jquery que es el encargado de hacer el llamado al contralador mientras se ejecuta la instruccion
$(function (){
$('#id_estados').change(function(){
var codigos = $('#id_estados').val(); //Captura COD del estado
$.ajax({
url:'/localidades/ver_ciudades',
type: 'post',
data: {
codigo: codigos
},
success:function(data){
$('#id_ciudades').html(data);
}
});
});
});
y por último la vistas
<?php $js = 'id="id_estados"';
echo form_dropdown('id_estados', $id_estados, set_value('id_estados'),$js); ?>
<label>Seleccione su Ciudad</label>
<i class="icon-globe"></i>
<?php $js = 'id="id_ciudades"';
echo form_dropdown('id_ciudades', $id_ciudades, set_value('id_ciudades'),$js); ?>