diff --git active_tags.js active_tags.js
index 88bf1bc..4d6b345 100644
--- active_tags.js
+++ active_tags.js
@@ -121,11 +121,7 @@ function activeTagsAdd(context, v) {
   v = Drupal.checkPlain(v);
   v = jQuery.trim(v);
   if (v != '') {
-    $(context).prev().children('.tag-holder').append(Drupal.theme('activeTagsTerm', v));
-    $('.remove-tag:not(.tag-processed)').click(function () {
-      $(this).parents('.tag-tag').remove();
-      activeTagsUpdate(context);
-    }).addClass('tag-processed');
+    Drupal.attachBehaviors($(context).parent().find('.tag-holder').append(Drupal.theme('activeTagsTerm', v)));
   }
 }
 
@@ -133,7 +129,7 @@ function activeTagsUpdate(context) {
   var wrapper = $(context);
   var textFields = wrapper.children('input.form-text');
   textFields.val('');
-  wrapper.prev().find('.tag-text').each(function (i) {
+  Drupal.attachBehaviors(wrapper.prev().find('.tag-text').each(function (i) {
     // Get tag and revome quotes to prevent doubling
     var tag = $(this).text().replace(/["]/g, '');
 
@@ -148,7 +144,7 @@ function activeTagsUpdate(context) {
     else {
       textFields.val(textFields.val() + ', ' + tag);
     }
-  });
+  }));
 }
 
 function activeTagsWidget(context) {
@@ -197,10 +193,15 @@ Drupal.behaviors.activeTagsWidget = function (context) {
   jQuery.each(Drupal.settings['active_tags'], function (i, v) {
     var wrapper = $(v);
     if (wrapper.length == 1 && !wrapper.hasClass('active-tags-processed')) {
-      activeTagsActivate(v);
       wrapper.addClass('active-tags-processed');
+      activeTagsActivate(v);
     }
   });
+
+  $('.remove-tag:not(.tag-processed)', context).addClass('tag-processed').click(function () {
+     $(this).parents('.tag-tag').remove();
+     activeTagsUpdate(context);
+   });
 }
 
 Drupal.behaviors.activeTagsAutocomplete = function (context) {
