diff --git editablefields.module editablefields.module
index 465fa61..801df1a 100755
--- editablefields.module
+++ editablefields.module
@@ -179,6 +179,11 @@ function editablefields_form_builder(&$form_state, $node, $field_name, $delta) {
     unset($form[$field_name][0]['#title']);
   }
 
+  $form['editablefields_node_nid'] = array(
+    '#type' => 'hidden',
+    '#value' => $node->nid,
+  );
+
   $form['#field_info'] = array($field['field_name'] => $field);
   $form['#pre_render'] = array('_editablefields_pre_render');
 
@@ -347,3 +352,23 @@ function editablefields_submit() {
   }
   exit();
 }
+
+/**
+ * Implementation of hook_file_insert
+ */
+function editablefields_file_insert($file) {
+  if(stripos($_GET['q'], 'filefield/ahah/') === 0 && !empty($_POST['editablefields_node_nid']) && $node = node_load($_POST['editablefields_node_nid'])) {
+    $file_clone = (array) $file;
+    field_file_save($node, $file_clone);
+
+    $q_arr = explode('/', $_GET['q']);
+    $field_name = $q_arr[3];
+    $delta = $q_arr[4];
+
+    $node->{$field_name}[$delta] = array(
+      'fid' => $file->fid
+    );
+
+    node_save($node);
+  }
+}
