1
0
Fork 0
file-manager/assets/multi.js

31 lines
811 B
JavaScript
Raw Normal View History

2016-10-09 13:17:00 +08:00
/* jshint esversion: 6 */
$(document).ready(() => {
let $select = $(".multi-select");
let setSelected = (files) => {
2018-02-15 00:31:29 +08:00
$(".multi-files-value").val(JSON.stringify(files.map(f => f.name)));
2016-10-09 13:17:00 +08:00
$(".multi-files").html(
files.map(f => {
2018-02-15 00:31:29 +08:00
return `<li class="list-group-item d-flex align-items-start justify-content-between"><span class="name">${f.name}</span> <span class="badge badge-pill badge-secondary">${f.size}</span></li>`;
2016-10-09 13:17:00 +08:00
}).join("")
);
};
2018-02-15 00:31:29 +08:00
let updateSelected = () => {
2016-10-09 13:17:00 +08:00
let $selected = $(".multi-select:checked");
let files = [];
$selected.each((i, ele) => {
2018-02-15 00:31:29 +08:00
files.push({
name: $(ele).data("select"),
size: $(ele).data("select-size")
});
2016-10-09 13:17:00 +08:00
});
setSelected(files);
2018-02-15 00:31:29 +08:00
}
$select.on("change", updateSelected);
updateSelected();
2016-10-09 13:17:00 +08:00
});