You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
321 lines
7.2 KiB
321 lines
7.2 KiB
1 year ago
|
var data = [
|
||
|
{
|
||
|
name: "bootstrap-table",
|
||
|
stargazers_count: "526",
|
||
|
forks_count: "122",
|
||
|
description:
|
||
|
"An extended Bootstrap table with radio, checkbox, sort, pagination, and other added features. (supports twitter bootstrap v2 and v3) ",
|
||
|
},
|
||
|
{
|
||
|
name: "multiple-select",
|
||
|
stargazers_count: "288",
|
||
|
forks_count: "150",
|
||
|
description:
|
||
|
"A jQuery plugin to select multiple elements with checkboxes :)",
|
||
|
},
|
||
|
{
|
||
|
name: "bootstrap-show-password",
|
||
|
stargazers_count: "32",
|
||
|
forks_count: "11",
|
||
|
description: "Show/hide password plugin for twitter bootstrap.",
|
||
|
},
|
||
|
{
|
||
|
name: "blog",
|
||
|
stargazers_count: "13",
|
||
|
forks_count: "4",
|
||
|
description: "my blog",
|
||
|
},
|
||
|
{
|
||
|
name: "scutech-redmine",
|
||
|
stargazers_count: "6",
|
||
|
forks_count: "3",
|
||
|
description: "Redmine notification tools for chrome extension.",
|
||
|
},
|
||
|
];
|
||
|
|
||
|
$(function () {
|
||
|
$("#smptable").bootstrapTable({
|
||
|
data: data,
|
||
|
});
|
||
|
});
|
||
|
|
||
|
/*table column*/
|
||
|
|
||
|
function buildTable($el, cells, rows) {
|
||
|
var i,
|
||
|
j,
|
||
|
row,
|
||
|
columns = [],
|
||
|
data = [];
|
||
|
|
||
|
for (i = 0; i < cells; i++) {
|
||
|
columns.push({
|
||
|
field: "field" + i,
|
||
|
title: "Cell" + i,
|
||
|
});
|
||
|
}
|
||
|
for (i = 0; i < rows; i++) {
|
||
|
row = {};
|
||
|
for (j = 0; j < cells; j++) {
|
||
|
row["field" + j] = "Row-" + i + "-" + j;
|
||
|
}
|
||
|
data.push(row);
|
||
|
}
|
||
|
$el.bootstrapTable("destroy").bootstrapTable({
|
||
|
columns: columns,
|
||
|
data: data,
|
||
|
});
|
||
|
}
|
||
|
|
||
|
$(function () {
|
||
|
buildTable($("#clmtable"), 50, 50);
|
||
|
});
|
||
|
|
||
|
var $table = $("#exporttable");
|
||
|
var $remove = $("#remove");
|
||
|
var selections = [];
|
||
|
|
||
|
function getIdSelections() {
|
||
|
return $.map($table.bootstrapTable("getSelections"), function (row) {
|
||
|
return row.id;
|
||
|
});
|
||
|
}
|
||
|
|
||
|
function responseHandler(res) {
|
||
|
$.each(res.rows, function (i, row) {
|
||
|
row.state = $.inArray(row.id, selections) !== -1;
|
||
|
});
|
||
|
return res;
|
||
|
}
|
||
|
|
||
|
function detailFormatter(index, row) {
|
||
|
var html = [];
|
||
|
$.each(row, function (key, value) {
|
||
|
html.push("<p><b>" + key + ":</b> " + value + "</p>");
|
||
|
});
|
||
|
return html.join("");
|
||
|
}
|
||
|
|
||
|
function operateFormatter(value, row, index) {
|
||
|
return [
|
||
|
'<a class="like" href="javascript:void(0)" title="Like">',
|
||
|
'<i class="fas fa-heart"></i>',
|
||
|
"</a> ",
|
||
|
'<a class="remove" href="javascript:void(0)" title="Remove">',
|
||
|
'<i class="fas fa-trash"></i>',
|
||
|
"</a>",
|
||
|
].join("");
|
||
|
}
|
||
|
|
||
|
window.operateEvents = {
|
||
|
"click .like": function (e, value, row, index) {
|
||
|
alert("You click like action, row: " + JSON.stringify(row));
|
||
|
},
|
||
|
"click .remove": function (e, value, row, index) {
|
||
|
$table.bootstrapTable("remove", {
|
||
|
field: "id",
|
||
|
values: [row.id],
|
||
|
});
|
||
|
},
|
||
|
};
|
||
|
|
||
|
function totalTextFormatter(data) {
|
||
|
return "Total";
|
||
|
}
|
||
|
|
||
|
function totalNameFormatter(data) {
|
||
|
return data.length;
|
||
|
}
|
||
|
|
||
|
function totalPriceFormatter(data) {
|
||
|
var field = this.field;
|
||
|
return (
|
||
|
"$" +
|
||
|
data
|
||
|
.map(function (row) {
|
||
|
return +row[field].substring(1);
|
||
|
})
|
||
|
.reduce(function (sum, i) {
|
||
|
return sum + i;
|
||
|
}, 0)
|
||
|
);
|
||
|
}
|
||
|
|
||
|
function initTable() {
|
||
|
$table.bootstrapTable("destroy").bootstrapTable({
|
||
|
height: 550,
|
||
|
locale: $("#locale").val(),
|
||
|
icons: {
|
||
|
paginationSwitchDown: "far fa-caret-square-down",
|
||
|
paginationSwitchUp: "far fa-caret-square-up",
|
||
|
refresh: "fas fa-history",
|
||
|
toggleOff: "fas fa-toggle-off",
|
||
|
toggleOn: "fas fa-toggle-on",
|
||
|
columns: "fas fa-list",
|
||
|
fullscreen: "fas fa-expand",
|
||
|
detailOpen: "fas fa-plus-circle",
|
||
|
detailClose: "far fa-times-circle",
|
||
|
export: "fas fa-share-alt",
|
||
|
},
|
||
|
columns: [
|
||
|
[
|
||
|
{
|
||
|
field: "state",
|
||
|
checkbox: true,
|
||
|
rowspan: 2,
|
||
|
align: "center",
|
||
|
valign: "middle",
|
||
|
},
|
||
|
{
|
||
|
title: "Item ID",
|
||
|
field: "id",
|
||
|
rowspan: 2,
|
||
|
align: "center",
|
||
|
valign: "middle",
|
||
|
sortable: true,
|
||
|
footerFormatter: totalTextFormatter,
|
||
|
},
|
||
|
{
|
||
|
title: "Item Detail",
|
||
|
colspan: 3,
|
||
|
align: "center",
|
||
|
},
|
||
|
],
|
||
|
[
|
||
|
{
|
||
|
field: "name",
|
||
|
title: "Item Name",
|
||
|
sortable: true,
|
||
|
footerFormatter: totalNameFormatter,
|
||
|
align: "center",
|
||
|
},
|
||
|
{
|
||
|
field: "price",
|
||
|
title: "Item Price",
|
||
|
sortable: true,
|
||
|
align: "center",
|
||
|
footerFormatter: totalPriceFormatter,
|
||
|
},
|
||
|
{
|
||
|
field: "operate",
|
||
|
title: "Item Operate",
|
||
|
align: "center",
|
||
|
events: window.operateEvents,
|
||
|
formatter: operateFormatter,
|
||
|
},
|
||
|
],
|
||
|
],
|
||
|
});
|
||
|
$table.on(
|
||
|
"check.bs.table uncheck.bs.table " +
|
||
|
"check-all.bs.table uncheck-all.bs.table",
|
||
|
function () {
|
||
|
$remove.prop("disabled", !$table.bootstrapTable("getSelections").length);
|
||
|
|
||
|
// save your data, here just save the current page
|
||
|
selections = getIdSelections();
|
||
|
// push or splice the selections if you want to save all data selections
|
||
|
}
|
||
|
);
|
||
|
$table.on("expand-row.bs.table", function (e, index, row, $detail) {
|
||
|
if (index % 2 === 1) {
|
||
|
$detail.html("Loading from ajax request...");
|
||
|
$.get("LICENSE", function (res) {
|
||
|
$detail.html(res.replace(/\n/g, "<br>"));
|
||
|
});
|
||
|
}
|
||
|
});
|
||
|
$table.on("all.bs.table", function (e, name, args) {
|
||
|
console.log(name, args);
|
||
|
});
|
||
|
$remove.click(function () {
|
||
|
var ids = getIdSelections();
|
||
|
$table.bootstrapTable("remove", {
|
||
|
field: "id",
|
||
|
values: ids,
|
||
|
});
|
||
|
$remove.prop("disabled", true);
|
||
|
});
|
||
|
}
|
||
|
|
||
|
$(function () {
|
||
|
initTable();
|
||
|
$("#locale").change(initTable);
|
||
|
});
|
||
|
|
||
|
var $table1 = $("#tablemodal");
|
||
|
|
||
|
$(function () {
|
||
|
$("#modalTable").on("shown.bs.modal", function () {
|
||
|
$table1.bootstrapTable("resetView");
|
||
|
});
|
||
|
});
|
||
|
|
||
|
var $table2 = $("#subtable");
|
||
|
|
||
|
function buildTable($el, cells, rows) {
|
||
|
var i;
|
||
|
var j;
|
||
|
var row;
|
||
|
var columns = [];
|
||
|
var data = [];
|
||
|
|
||
|
for (i = 0; i < cells; i++) {
|
||
|
columns.push({
|
||
|
field: "field" + i,
|
||
|
title: "Cell" + i,
|
||
|
sortable: true,
|
||
|
});
|
||
|
}
|
||
|
for (i = 0; i < rows; i++) {
|
||
|
row = {};
|
||
|
for (j = 0; j < cells; j++) {
|
||
|
row["field" + j] = "Row-" + i + "-" + j;
|
||
|
}
|
||
|
data.push(row);
|
||
|
}
|
||
|
$el.bootstrapTable({
|
||
|
columns: columns,
|
||
|
data: data,
|
||
|
detailView: cells > 1,
|
||
|
onExpandRow: function (index, row, $detail) {
|
||
|
/* eslint no-use-before-define: ["error", { "functions": false }]*/
|
||
|
expandTable($detail, cells - 1);
|
||
|
},
|
||
|
});
|
||
|
}
|
||
|
|
||
|
function expandTable($detail, cells) {
|
||
|
buildTable($detail.html("<table></table>").find("table"), cells, 1);
|
||
|
}
|
||
|
|
||
|
$(function () {
|
||
|
buildTable($table2, 8, 1);
|
||
|
});
|
||
|
|
||
|
var $table3 = $("#localetable");
|
||
|
|
||
|
$(function () {
|
||
|
$table3.bootstrapTable();
|
||
|
$table3.bootstrapTable("destroy").bootstrapTable({
|
||
|
locale: $("#localetable").val(),
|
||
|
icons: {
|
||
|
paginationSwitchDown: "far fa-caret-square-down",
|
||
|
paginationSwitchUp: "far fa-caret-square-up",
|
||
|
refresh: "fas fa-history",
|
||
|
toggleOff: "fas fa-toggle-off",
|
||
|
toggleOn: "fas fa-toggle-on",
|
||
|
columns: "fas fa-list",
|
||
|
fullscreen: "fas fa-expand",
|
||
|
detailOpen: "fas fa-plus-circle",
|
||
|
detailClose: "far fa-times-circle",
|
||
|
export: "fas fa-share-alt",
|
||
|
},
|
||
|
});
|
||
|
$("#localetable").change(function () {
|
||
|
$table3.bootstrapTable("refreshOptions", {
|
||
|
locale: $(this).val(),
|
||
|
});
|
||
|
});
|
||
|
});
|