diff --git a/typo3/sysext/recycler/Resources/Public/JavaScript/Recycler.js b/typo3/sysext/recycler/Resources/Public/JavaScript/Recycler.js
index be6021cdf6957da5a0ee87dfd06f791e3fd77796..7d3336a96d5f5589571965eee19222051f4142c2 100644
--- a/typo3/sysext/recycler/Resources/Public/JavaScript/Recycler.js
+++ b/typo3/sysext/recycler/Resources/Public/JavaScript/Recycler.js
@@ -438,7 +438,7 @@ define(['jquery',
 				text: TYPO3.lang['button.undo'],
 				btnClass: 'btn-success',
 				trigger: function() {
-					Recycler.callAjaxAction('undo', typeof records === 'object' ? records : [records], isMassUndo);
+					Recycler.callAjaxAction('undo', typeof records === 'object' ? records : [records], isMassUndo, $message.find('#undo-recursive').prop('checked') ? 1 : 0);
 				}
 			}
 		]);
@@ -449,8 +449,9 @@ define(['jquery',
 	 * @param {String} action
 	 * @param {Object} records
 	 * @param {Boolean} isMassAction
+	 * @param {Boolean} recursive
 	 */
-	Recycler.callAjaxAction = function(action, records, isMassAction) {
+	Recycler.callAjaxAction = function(action, records, isMassAction, recursive) {
 		var data = {
 				records: records,
 				action: ''
@@ -458,7 +459,7 @@ define(['jquery',
 			reloadPageTree = false;
 		if (action === 'undo') {
 			data.action = 'undoRecords';
-			data.recursive = $('#undo-recursive').prop('checked')  ? 1 : 0;
+			data.recursive = recursive ? 1 : 0;
 			reloadPageTree = true;
 		} else if (action === 'delete') {
 			data.action = 'deleteRecords';