diff --git a/field_reference.module b/field_reference.module
index c7bbe0e..81a7b3a 100644
--- a/field_reference.module
+++ b/field_reference.module
@@ -195,6 +195,12 @@ function field_reference_field_settings_form($field, $instance, $has_data) {
     '#default_value' => $settings['append_id'],
     '#description' => t('Append the internal field reference ID to list items, for disambiguation.'),
   );
+  $form['hide_entity_label'] = array(
+    '#type' => 'checkbox',
+    '#title' => t('Hide reference label'),
+    '#default_value' => $settings['hide_entity_label'],
+    '#description' => t('Hide reference entity label.'),
+  );
 
   return $form;
 }
@@ -703,12 +709,12 @@ function _field_reference_potential_references_standard($field, $instance, $opti
             if ($entity_type == 'node') {
               $sub_query->addTag('node_access');
             }
-
             $field_label = $field_info_instances[$entity_type][$bundle][$field_key]['label'];
             if (!trim($field_label)) {
               $field_label = $field_key;
             }
 
+            $v_key = $field_info_instances[$entity_type][$bundle][$field_key]['field_name'].'_value';
             $ph_key = $placeholder_count++;
             $sub_query->addExpression(':field_key' . $ph_key, 'field_key', array(':field_key' . $ph_key => $field_key));
             $conditions['wheres'][] = "'" . $field_key . "'";
@@ -719,6 +725,10 @@ function _field_reference_potential_references_standard($field, $instance, $opti
               $sub_query->addField('field', $select);
               $conditions['conditions'][] = 'field.' . $select;
             }
+            
+            //Add entity value to select
+            array_unshift($field_selects, $v_key);
+            array_unshift($field_select_group, $v_key);
 
             foreach ($field_selects as $select) {
               if ($select) {
@@ -831,8 +841,9 @@ function _field_reference_potential_references_standard($field, $instance, $opti
 
         $key = field_reference_key_create($field_reference);
         $label = NULL;
+        
         if (empty($options['prevent_label'])) {
-          $label = field_reference_label_create($field_reference);
+          $label = field_reference_label_create($field_reference, $field['settings']['hide_entity_label']);
           if ((!empty($field['settings']['append_id']) && $options['append_id'] !== FALSE) || $options['append_id']) {
             $label .= ' [' . $key . ']';
           }
@@ -1063,10 +1074,11 @@ function field_reference_views_options($field_name) {
  * @return
  *   The field reference label.
  */
-function field_reference_label_create($field_reference) {
-  //if (!empty($field_reference['field_label'])) {
-    $label = $field_reference['field_label'];
-  //}
+function field_reference_label_create($field_reference, $hide_reference_label = FALSE) {
+  $label = '';
+  if ($hide_reference_label != 1) {
+    $label = $field_reference['field_label'] . ' - ';
+  }
   /*
   elseif (!empty($field_reference['entity_type']) && !empty($field_reference['bundle'])) {
     $instance = field_info_instance($field_reference['entity_type'], $field_reference['field_key'], $field_reference['bundle']);
@@ -1077,9 +1089,13 @@ function field_reference_label_create($field_reference) {
   }
   */
 
-
-  if (isset($field_reference['delta']) && !is_null($field_reference['delta'])) {
-    $label .= ' (' . t('value') . ' ' . ($field_reference['delta'] + 1) . ')';
+  //This is useless, user should see the entity value
+  // if (isset($field_reference['delta']) && !is_null($field_reference['delta'])) {
+  //   $label .= ' (' . t('value') . ' ' . ($field_reference['delta'] + 1) . ')';
+  // }
+  $value_key = $field_reference['field_key'] .'_value';
+  if(!empty($field_reference[$value_key])) {
+    $label .= $field_reference[$value_key];
   }
   if (!empty($field_reference['entity_label'])) {
     $label .= ' - ' . $field_reference['entity_label'];
