diff --git a/popups_reference.js b/popups_reference.js
--- a/popups_reference.js
+++ b/popups_reference.js
@@ -39,6 +39,7 @@
         // Info about the new node was placed in a cookie when it was created.
         var nid = popups_reference_get_cookie_value('PopupRefNid');
         var title = popups_reference_get_cookie_value('PopupRefTitle');
+        title = decodeURIComponent(title);
         $wrapper.find('select').val(nid); // Select
         $wrapper.find('input.form-autocomplete').val(title); // Autocomplete
         $wrapper.find(':radio[value=' + nid + ']').select(); // Radio buttons
diff --git a/popups_reference.module b/popups_reference.module
--- a/popups_reference.module
+++ b/popups_reference.module
@@ -57,7 +57,7 @@
   if ($op == 'insert') {
       $five = time()+300; // 5 minutes in the future.
       setcookie("PopupRefNid", $node->nid, $five, '/'); 
-      setcookie("PopupRefTitle", $node->title, $five, '/');
+      setrawcookie("PopupRefTitle", rawurlencode($node->title), $five, '/');
   }
 }
 
