Код: Выделить всё
Select Options
Apple
Banana
Cherry
Date
< /code>
< /div>
< /div>
< /p>
$(document).ready(function() {
$('#my-select').multiselect({
placeholder: 'Select fruits',
onControlOpen: function() {
const $optionsContainer = $('.ms-options')
// Add Select All checkbox once
if ($('.select-all-container').length === 0) {
const $selectAllContainer = $(`
Select All
`)
$optionsContainer.prepend($selectAllContainer)
// Real fix: Stop mousedown before plugin closes the dropdown
$(document).on('mousedown', function(e) {
if ($(e.target).closest('.select-all-container').length) {
e.stopPropagation()
}
})
$('#select-all-checkbox').on('change', function() {
const isChecked = $(this).is(':checked')
$('#my-select option').prop('selected', isChecked)
$('#my-select').multiselect('reload')
})
}
// Add Apply/Cancel buttons once
if ($('.custom-button-wrapper').length === 0) {
const $wrapper = $('')
const $apply = $('Apply').on(
'click',
function() {
const selected = $('#my-select').val()
alert('Selected: ' + (selected ? selected.join(', ') : 'None'))
},
)
const $cancel = $(
'Cancel',
).on('click', function() {
$('#my-select').val([]).multiselect('reload')
$('.ms-parent').find('.ms-drop').hide()
})
$wrapper.append($apply).append($cancel)
$optionsContainer.append($wrapper)
}
},
})
})< /code>
.custom-button {
display: inline-block;
margin: 10px 5px 5px;
padding: 5px 10px;
background-color: #007bff;
color: white;
border: none;
border-radius: 4px;
cursor: pointer;
}
.custom-button.cancel {
background-color: #dc3545;
}
.custom-button-wrapper {
text-align: center;
padding-bottom: 10px;
}
.select-all-container {
padding: 5px 10px;
border-bottom: 1px solid #ccc;
background: #f9f9f9;
user-select: none;
}< /code>
Select Options
Apple
Banana
Cherry
Date
Подробнее здесь: https://stackoverflow.com/questions/796 ... h-checkbox