mourningdove/htdocs/js/components/jquery.select-all.js

26 lines
990 B
JavaScript
Raw Permalink Normal View History

2026-05-24 01:03:05 +00:00
(function($) {
$.fn.selectAll = function() {
var $table = $(this);
$("input[data-select-all]", this).click(function(e) {
var $checkbox = $(this);
var select_this = $checkbox.data("select-all")
$table
.find( "input[name=" + select_this + "], input[value=" + select_this + "]" )
.prop( "checked", $checkbox.is(":checked") );
e.stopPropagation();
})
$table.click(function(e) {
// if we clicked anywhere else in the table, uncheck any select-all checkbox
// but not any select-all checkbox is what we just clicked
// this is to avoid interfering with deselecting everyhing by clicking on a label
$("input[data-select-all]")
.not($(e.target).find("input[data-select-all]"))
.prop( "checked", false );
})
}
})(jQuery);
jQuery(function($) {
$("table.select-all").selectAll();
});