en mi controller tengo
/**
*
* @Route("/cmbestablecimientos", name="ofertas_mostrarestablecimientos")
*/
public function mostrarestablecimientosAction() {
$request = $this->getRequest();
$idDpto = $request->get('id');
$em = $this->getDoctrine()->getManager();
$consulta='SELECT e
FROM SaludOfertasBundle:Establecimientos e
WHERE e.iddepto=:idDepto';
$establecimiento['establecimiento']=$em->createQuery($consulta)
->setParameter('idDepto',$idDpto)
->getArrayResult();
return new Response(json_encode($establecimiento));
}
mi combo.js tiene
$(document).ready(function() {
$('#form_id').change(function(){
// borramos el primer item de establecimiento
$('#form_idestable').children().remove();
$('#form_idestable').append('<option value="">'+'--Seleccione--'+'</option>');
$.getJSON(Routing.generate('cmbestablecimientos')+ '?id='+$('#form_id').val(),
function(data) {
$.each(data.establecimiento, function(key, val) {
$('#form_idestable').append('<option value="'+val.id+'">'+val.nombre+'</option>');
});
});
});
});
pero al depurarlo con el debug puedo observar que toma el valor del primer combo llamado form_id, pero en el segundo objeto form_idestable, quita todos los elementos y pone seleccione, pero no muestra ningun registro correspondiente al id del primer combo.
¿pueden indicarme que debo corregir para que funcione correctamente?