diff --git a/modules/block/block.js b/modules/block/block.js
index c1b7eb6..3de7318 100644
--- a/modules/block/block.js
+++ b/modules/block/block.js
@@ -45,11 +45,15 @@ Drupal.behaviors.blockDrag = function(context) {
       var select = $(this);
       tableDrag.rowObject = new tableDrag.row(row);
 
-      // Find the correct region and insert the row as the first in the region.
+      // Find the correct region and insert the row as the last in the region.
       $('tr.region-message', table).each(function() {
         if ($(this).is('.region-' + select[0].value + '-message')) {
           // Add the new row and remove the old one.
-          $(this).after(row);
+          regionBottom = $(this);
+          while(regionBottom.next().length && !regionBottom.next().is('.region')) {
+            regionBottom = regionBottom.next();
+          }
+          regionBottom.after(row);
           // Manually update weights and restripe.
           tableDrag.updateFields(row.get(0));
           tableDrag.rowObject.changed = true;
