diff --git a/clientside_validation_field_validation/clientside_validation_field_validation.module b/clientside_validation_field_validation/clientside_validation_field_validation.module
index 9f1be1f..a5d0fe3 100644
--- a/clientside_validation_field_validation/clientside_validation_field_validation.module
+++ b/clientside_validation_field_validation/clientside_validation_field_validation.module
@@ -20,16 +20,15 @@ function clientside_validation_field_validation_clientside_validation_form_alter
     }
     // Field validation 2.x
     else {
-      $element = &$element[$rule['rule']['field_name']];
       $field = field_info_field($rule['rule']['field_name']);
       $languages = field_available_languages($rule['rule']['entity_type'], $field);
       foreach ($languages as $langcode) {
-        if (isset($element[$langcode])) {
-          $element = &$element[$langcode];
+        if (isset($element[$rule['rule']['field_name']][$langcode])) {
+          $element = &$element[$rule['rule']['field_name']][$langcode];
         }
         foreach (element_children($element) as $delta) {
-            $element = &$element[$delta];
-            clientside_validation_field_validation_after_build_recurse($form['#id'], $element, $form_state, $rule['rule'], $js_rules);
+          $item = &$element[$delta];
+          clientside_validation_field_validation_after_build_recurse($form['#id'], $item, $form_state, $rule['rule'], $js_rules);
         }
         //Support select fields.
         if (!count(element_children($element)) && isset($element['#type']) && $element['#type'] == 'select') {
