diff --git a/modules/field/field.form.inc b/modules/field/field.form.inc
index 49417ee..e322288 100644
--- a/modules/field/field.form.inc
+++ b/modules/field/field.form.inc
@@ -214,7 +214,8 @@ function field_multiple_value_form($field, $instance, $langcode, $items, &$form,
         '#field_parents' => $parents,
         '#columns' => array_keys($field['columns']),
         // For multiple fields, title and description are handled by the wrapping table.
-        '#title' => $multiple ? '' : $title,
+        // Title is needed for the element validation.
+        '#title' => $title,
         '#description' => $multiple ? '' : $description,
         // Only the first widget should be required.
         '#required' => $delta == 0 && $instance['required'],
@@ -334,6 +335,12 @@ function theme_field_multiple_value_form($variables) {
     foreach ($items as $key => $item) {
       $item['_weight']['#attributes']['class'] = array($order_class);
       $delta_element = drupal_render($item['_weight']);
+      // Don't show the title for each element.
+      foreach (element_children($item) as $key) {
+        if (isset($item[$key]['#title'])) {
+          $item[$key]['#title'] = '';
+        }
+      }
       $cells = array(
         array('data' => '', 'class' => array('field-multiple-drag')),
         drupal_render($item),
