Skip to content

Commit 8b96027

Browse files
committed
fix shift select bulk actions
1 parent ec35cab commit 8b96027

File tree

1 file changed

+5
-2
lines changed

1 file changed

+5
-2
lines changed

src/resources/views/crud/columns/inc/bulk_actions_checkbox.blade.php

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,11 +28,14 @@ function addOrRemoveCrudCheckedItem(element) {
2828
// if shift has been pressed, also select all elements
2929
// between the last checked item and this one
3030
if (crud.lastCheckedItem && e.shiftKey) {
31+
let getNodeindex = elm => [...elm.parentNode.children].indexOf(elm);
3132
let first = document.querySelector(`input.crud_bulk_actions_line_checkbox[data-primary-key-value="${crud.lastCheckedItem}"]`).closest('tr');
3233
let end = document.querySelector(`input.crud_bulk_actions_line_checkbox[data-primary-key-value="${primaryKeyValue}"]`).closest('tr');
33-
34+
let firstIndex = getNodeindex(first);
35+
let endIndex = getNodeindex(end)
36+
3437
while(first !== end) {
35-
first = first.nextElementSibling;
38+
first = firstIndex < endIndex ? first.nextElementSibling : first.previousElementSibling;
3639
first.querySelector('input.crud_bulk_actions_line_checkbox:not(:checked)')?.click();
3740
}
3841
}

0 commit comments

Comments
 (0)