diff --git a/core/misc/tabledrag.js b/core/misc/tabledrag.js
index 395d09298fa7546b0299f5ec85068352e4fb33fd..75468e60ddb49fa3f7c079704562a3e4eccac0ae 100644
--- a/core/misc/tabledrag.js
+++ b/core/misc/tabledrag.js
@@ -1162,10 +1162,10 @@
     // :even and :odd are reversed because jQuery counts from 0 and
     // we count from 1, so we're out of sync.
     // Match immediate children of the parent element to allow nesting.
-    $(this.table).find('> tbody > tr.draggable:visible, > tr.draggable:visible')
-      .removeClass('odd even')
-      .filter(':odd').addClass('even').end()
-      .filter(':even').addClass('odd');
+    $(this.table).find('> tbody > tr.draggable, > tr.draggable')
+      .filter(':visible')
+      .filter(':odd').removeClass('odd').addClass('even').end()
+      .filter(':even').removeClass('even').addClass('odd');
   };
 
   /**