diff --git a/entityreference_view_widget.module b/entityreference_view_widget.module
index 3d419e5..41f7305 100755
--- a/entityreference_view_widget.module
+++ b/entityreference_view_widget.module
@@ -164,6 +164,8 @@ function entityreference_view_widget_field_widget_form(&$form, &$form_state, $fi
     'field' => $field,
     'index' => $index,
     'column' => key($field['columns']),
+    'items' => $items,
+    'bundle' => $form['type']['#value']
   );
   // Append the widget settings to the array.
   $settings += $instance['widget']['settings'];
@@ -390,6 +392,21 @@ function entityreference_view_widget_ajax($form, $form_state) {
       }
       $rows += entityreference_view_widget_rows($entity_ids, $widget_settings);
 
+      // Allow modules using field_widget_form_alter to alter rows
+      $field = field_info_field($widget_settings['element']);
+      $instance = field_info_instance($widget_settings['target_type'], $widget_settings['element'], $widget_settings['bundle']);
+
+      $context = array(
+        'form' => $widget_settings['entity_form'],
+        'field' => $field,
+        'instance' => $instance,
+        'langcode' => $widget_settings['langcode'],
+        'items' => $widget_settings['items'],
+        'delta' => 0,
+      );
+
+      drupal_alter(array('field_widget_form', 'field_widget_' . $instance['widget']['type'] . '_form'), $rows, $form_state, $context);
+
       // Replace the whole table with updated values.
       $commands[] = ajax_command_replace('#' . $widget_settings['table_id'] . ' > tbody', '<tbody>' . render($rows) . '</tbody>');
       // Make the table rows draggables.
@@ -568,9 +585,10 @@ function theme_entityreference_view_widget_rows($variables) {
 
   $settings = $variables['rows']['#widget_settings'];
   foreach (element_children($variables['rows']) as $row) {
+    unset($variables['rows'][$row]['_weight']);
     $output[$row]  = '<tr class="draggable ' . current($zebra) . '">';
     $output[$row] .= '<td class="field-multiple-drag"></td>';
-    $output[$row] .= '<td>' . render($variables['rows'][$row][$settings['column']]) . '</td>';
+    $output[$row] .= '<td>' . render($variables['rows'][$row]) . '</td>';
     if ($settings['cardinality'] !== '1') {
       $output[$row] .= '<td class="delta-order tabledrag-hide">' . render($variables['rows'][$row]['_weight']) . '</td>';
     }
