diff --git a/app/assets/javascripts/dropzone_input.js.coffee b/app/assets/javascripts/dropzone_input.js.coffee
index c714c0fa9394c1c75961cf821ea26e391f85b50e..32a5594a5b1995de63a790ff6ad3f69a61a76367 100644
--- a/app/assets/javascripts/dropzone_input.js.coffee
+++ b/app/assets/javascripts/dropzone_input.js.coffee
@@ -65,8 +65,13 @@ class @DropzoneInput
         return
 
       success: (header, response) ->
+        link_markdown = response.link.markdown
         child = $(dropzone[0]).children("textarea")
-        $(child).val $(child).val() + response.link.markdown + "\n"
+        cursor_pos = child.prop "selectionStart"
+        value = $(child).val()
+        new_text = "#{value.substring(0,  cursor_pos)}#{link_markdown}#{value.substring(cursor_pos, value.length)}"
+
+        $(child).val new_text + "\n"
         return
 
       error: (temp, errorMessage) ->