diff --git a/module/VuFind/src/VuFind/View/Helper/Bootstrap3/Flashmessages.php b/module/VuFind/src/VuFind/View/Helper/Bootstrap3/Flashmessages.php
index 2415ad5bab4d2a2c4be340b8081d679f18cabb90..1399a8bd60cedd0cab079684c4eace8d669b2309 100644
--- a/module/VuFind/src/VuFind/View/Helper/Bootstrap3/Flashmessages.php
+++ b/module/VuFind/src/VuFind/View/Helper/Bootstrap3/Flashmessages.php
@@ -50,6 +50,6 @@ class Flashmessages extends \VuFind\View\Helper\Root\Flashmessages
         if ($ns == 'error') {
             $ns = 'danger';
         }
-        return 'alert alert-' . $ns;
+        return 'flash-message alert alert-' . $ns;
     }
 }
diff --git a/themes/bootstrap3/js/lightbox.js b/themes/bootstrap3/js/lightbox.js
index 9c793894ba6e886dc97430112d9e578111c56156..f5565d025dd1cd7d1e45072e7bafbb0470a56575 100644
--- a/themes/bootstrap3/js/lightbox.js
+++ b/themes/bootstrap3/js/lightbox.js
@@ -68,8 +68,8 @@ VuFind.lightbox = (function() {
       return;
     }
     // Isolate successes
-    var htmlDiv = $('<div>'+html+'</div>');
-    var alerts = htmlDiv.find('.alert-success');
+    var htmlDiv = $('<div/>').html(html);
+    var alerts = htmlDiv.find('.flash-message.alert-success');
     if (alerts.length > 0) {
       showAlert(alerts[0].innerHTML, 'success');
       return;
@@ -127,10 +127,10 @@ VuFind.lightbox = (function() {
           return;
         }
         if ( // Close the lightbox after deliberate login
-          obj.method                                                  // is a form
-          && !html.match(/alert alert-danger/)                        // skip failed logins
-          && ((obj.url.match(/MyResearch/) && !obj.url.match(/Bulk/)) // that matches login/create account
-            || obj.url.match(/catalogLogin/))                         // or catalog login for holds
+          obj.method                                                                // is a form
+          && ((obj.url.match(/MyResearch/) && !obj.url.match(/Bulk/))               // that matches login/create account
+            || obj.url.match(/catalogLogin/))                                       // or catalog login for holds
+          && $('<div/>').html(html).find('.flash-message.alert-danger').length == 0 // skip failed logins
         ) {
           if (_originalUrl.match(/UserLogin/) || obj.url.match(/catalogLogin/)) {
             _refreshPage();