How to get selected Value in the listbox by using form api I have created a form with fields titled State and City. After selecting the state's appropriate city records, they will be loaded into city listbox. Until now they were working fine, but after clicking the submit button I am not able to store the city's value into variable called $data1. How can I get it to return the city value?

Source code 

function form_test_form($form,&amp;$form_submit) {
  $query_state=db_select('state', 's');
  $query_state-&gt;fields('s',array('State_code','State_name'));
  $query_state-&gt;orderBy('State_name','ASC');
  $state_results = $query_state-&gt;execute();
  $options_state = array();

  foreach($state_results as $state_record) {
    $options_state[$state_record-&gt;State_code]=t($state_record-&gt;State_name);
  }

  $form['state1']= array(
    '#type' =&gt; 'select',
    '#title' =&gt; t('State'),
    '#options' =&gt;$options_state,
    '#required' =&gt; TRUE,
    '#ajax' =&gt; array(
      'callback' =&gt; '_ajaxfunction',
      'wrapper' =&gt; 'divaroundseconddropdown'
    ),
  );


  $form['city_element_wrapper'] = array(
    '#prefix' =&gt; '&lt;div id="divaroundseconddropdown"&gt;',
    '#suffix' =&gt; '&lt;/div&gt;',
  );
  return $form;
}


Ajax Function

function _ajaxfunction($form, $form_state) { 
  $key = !empty($form_state['values']['state1']) ? $form_state['values']['state1'] : 1;

  $query_city=db_select('city', 'c');
  $query_city-&gt;fields('c',array('District_Code','District_Name','State_Code'));
  $query_city-&gt;condition('State_Code', $key, '=');

  $query_city-&gt;orderBy('District_Name','ASC');
  $city_results = $query_city-&gt;execute();
  $options_city = array();


  foreach ($city_results as $city_record) {
    // This is correct.
    $options_city[$city_record-&gt;District_Code]=t($city_record-&gt;District_Name);
  }

  $form['city_element_wrapper']['city']= array(
    '#type' =&gt; 'select',
    '#title' =&gt; t('District'),
    '#options' =&gt; $options_city,
    '#required' =&gt; TRUE,);

  return $form['city_element_wrapper']; 
}


Now I am trying to store the value of what I have selected in City listbox into $data1 variable but I am not able to store it, Please guide me how to store. It is printing empty value (i.e blank)

function form_test_custom_form_submit($form, $form_state) {
  $data1 = $form_state['values']['city_element_wrapper'];
  print_r($data1); // it is printing empty value
}
1) Try form_test_custom_form_submit($form, &amp;$form_state) {}

2) Try to print all values. print_r($form_state['values']); 


  // $form_state['values']['city']; you may get values here.


You can write $form['city_element_wrapper']['city'] array inside the form_test_form itself, instead of writing inside ajax callback.