diff --git a/views_filters_selective/views_handler_filter_selective.inc b/views_filters_selective/views_handler_filter_selective.inc
index 696c0c0..38ef357 100644
--- a/views_filters_selective/views_handler_filter_selective.inc
+++ b/views_filters_selective/views_handler_filter_selective.inc
@@ -11,9 +11,26 @@ class views_handler_filter_selective extends views_handler_filter_in_operator {
       $options = empty($oids) ? array() : call_user_func($handler, $this, $oids);
       sort($options);
       if (!empty($options)) {
+		$options = array_filter($options);
         // Encode the values to keep special chars.
         $this->value_options = array_combine(array_map('urlencode', array_values($options)), array_values($options));
       }
+	  // Modify value_options to include title for term node reference fields.
+	     if ($this->definition['proxy'] == 'location_handler_filter_location_country') {
+	        include_once DRUPAL_ROOT .'/includes/locale.inc';
+			//store value option temporarily.
+			$countries = country_get_list();
+				foreach ($this->value_options as $country_id) {
+					$ucountry_id = strtoupper($country_id);
+					if (array_key_exists($ucountry_id, $countries)) {
+						$this->value_options[$country_id] = $countries[$ucountry_id];
+					}
+	        	}
+	        // resort results based on title
+	        asort($this->value_options);
+	      }
+	      // Remove empty values
+	      $this->value_options = array_diff_key($this->value_options , array("" => NULL));
     }
   }
 
@@ -41,7 +58,7 @@ class views_handler_filter_selective extends views_handler_filter_in_operator {
       $view_copy = views_get_view($this->view->name);
       if (!$view_copy) return NULL;
       $view_copy->selective_oids = TRUE;
-      $view_copy->set_exposed_input($exposed_input);
+      $view_copy->set_exposed_input(array('All'));
       $view_copy->set_arguments($this->view->args);
       $view_copy->set_items_per_page(0);
       if (isset($_GET['items_per_page'])) {
