diff --git a/public/src/admin/manage/users.js b/public/src/admin/manage/users.js
index 96da2ef057..9efb1807be 100644
--- a/public/src/admin/manage/users.js
+++ b/public/src/admin/manage/users.js
@@ -191,6 +191,9 @@ define('admin/manage/users', ['translator', 'benchpress'], function (translator,
 						app.alertSuccess('[[admin/manage/users:alerts.delete-success]]');
 						removeSelected();
 						unselectAll();
+						if (!$('.users-table [component="user/select/single"]').length) {
+							ajaxify.refresh();
+						}
 					});
 				}
 			});
@@ -211,6 +214,9 @@ define('admin/manage/users', ['translator', 'benchpress'], function (translator,
 						app.alertSuccess('[[admin/manage/users:alerts.delete-success]]');
 						removeSelected();
 						unselectAll();
+						if (!$('.users-table [component="user/select/single"]').length) {
+							ajaxify.refresh();
+						}
 					});
 				}
 			});
diff --git a/src/groups/membership.js b/src/groups/membership.js
index f11eebcc0b..864fdea81f 100644
--- a/src/groups/membership.js
+++ b/src/groups/membership.js
@@ -292,13 +292,7 @@ module.exports = function (Groups) {
 				async.each(groups, function (groupName, next) {
 					async.parallel([
 						function (next) {
-							Groups.isMember(uid, groupName, function (err, isMember) {
-								if (!err && isMember) {
-									Groups.leave(groupName, uid, next);
-								} else {
-									next();
-								}
-							});
+							Groups.leave(groupName, uid, next);
 						},
 						function (next) {
 							Groups.rejectMembership(groupName, uid, next);