Populate dropdown with data from database in Drupal7 using jQuery
By default, hook_menu's delivery callback is set to drupal_deliver_html_page(), therefore it delivers content wrapped in a page template. You will need to modify the delivery callback.

To output page content in ajax

function MYMODULE_menu() {
  $items['search/data1'] = array() 
  'title' =&gt; 'Add data', //page title
  'description' =&gt; 'form',
  'page callback' =&gt; 'search_data1',
  'page arguments' =&gt; array('access content'),
  'delivery callback' =&gt; 'MYMODULE_ajax_deliver',
  'access callback' =&gt; TRUE
}

function MYMODULE_ajax_deliver() {
  if ($page_callback_result) echo drupal_json_output($page_callback_result);
}


To output naked page content

function MYMODULE_menu() {
  $items['search/data1'] = array() 
  'title' =&gt; 'Add data', //page title
  'description' =&gt; 'form',
  'page callback' =&gt; 'search_data1',
  'page arguments' =&gt; array('access content'),
  'delivery callback' =&gt; 'MYMODULE_custom_deliver',
  'access callback' =&gt; TRUE
}

function MYMODULE_custom_deliver($page_callback_result) {
  if ($page_callback_result) echo $page_callback_result;
}


To learn more about a custom delivery callback function, see my other answer.