I need to create a drop-down of states such that as soon as i select country from country drop_down then states drop_down of that country should come up using Ajax. I am getting error following error.
Attempted to call an undefined method named "getDoctrine" of class "FOS\UserBundle\Controller\RegistrationController"
The AJAX is getting called and the id of the country is being passed to the controller , the main problem is the getDoctrine
function.
Here is my controller.
I am new to symfony , please help me.
public function getStateAction(Request $request)
{
$em1 = $this->getDoctrine()->getManager();
$data = $request->request->all();
$countryId = $data['id'];
$repository = $em->getRepository('FOSUserBundle:State');
$query = $repository->createQueryBuilder('p');
$query->where('p.country ='.$countryId);
$query->orderBy('p.id', 'ASC');
$stateList = $query->getQuery()->getResult();
//print_r($stateList); die;
}
Here is my ajax
$(document).ready(function(){
$("#fos_user_registration_form_country_id").change(function(){
var countryId = $(this).val();
if(countryId!=0){
$.ajax({
type: "POST",
url: "{{ path('fos_user_registration_country') }}",
data: {id: countryId},
cache: false,
success: function(result){
("#fos_user_registration_form_state_id").append(result);
}
});
}
});
});