Hinweis: Leere nach dem Veröffentlichen den Browser-Cache, um die Änderungen sehen zu können.

  • Firefox/Safari: Umschalttaste drücken und gleichzeitig Aktualisieren anklicken oder entweder Strg+F5 oder Strg+R (⌘+R auf dem Mac) drücken
  • Google Chrome: Umschalttaste+Strg+R (⌘+Umschalttaste+R auf dem Mac) drücken
  • Internet Explorer/Edge: Strg+F5 drücken oder Strg drücken und gleichzeitig Aktualisieren anklicken
  • Opera: Strg+F5
// table2csv
(function ($) {
    "use strict";

    const optionsDefaults = {
        /* action='download' options */
        filename: "table.csv",

        /* action='output' options */
        appendTo: "body",

        /* general options */
        separator: ",",
        newline: "\n",
        quoteFields: true,
        trimContent: true,
        excludeColumns: "",
        excludeRows: ""
    };

    var exportOptions = {};

    function quote(text) {
        return "\"" + text.replace("\"", "\"\"") + "\"";
    }

    function download(filename, text) {
        const element = document.createElement("a");
        element.setAttribute("href", "data:text/csv;charset=utf-8,\ufeff" + encodeURIComponent(text));
        element.setAttribute("download", filename);

        element.style.display = "none";
        document.body.appendChild(element);

        element.click();

        document.body.removeChild(element);
    }

    function convert(table) {
        var output = "";

        const rows = table.find("tr").not(exportOptions.excludeRows);

        const numCols = rows.first().find("td,th").filter(":visible").not(exportOptions.excludeColumns).length;

        rows.each(function (ignore, elem) {
            $(elem).find("td,th").filter(":visible").not(exportOptions.excludeColumns)
                .each(function (i, col) {
                    const column = $(col);

                    const content = exportOptions.trimContent
                        ? $.trim(column.text())
                        : column.text();

                    output += exportOptions.quoteFields
                        ? quote(content)
                        : content;
                    if (i !== numCols - 1) {
                        output += exportOptions.separator;
                    } else {
                        output += exportOptions.newline;
                    }
                });
        });
        return output;
    }

    $.fn.table2csv = function (action, opt) {
        if (typeof action === "object") {
            opt = action;
            action = "download";
        } else if (action === undefined) {
            action = "download";
        }

        if (typeof action !== "string") {
            throw new Error("\"action\" argument must be a string");
        }
        if (opt !== undefined && typeof opt !== "object") {
            throw new Error("\"options\" argument must be an object");
        }

        exportOptions = $.extend({}, optionsDefaults, opt);

        const table = this.filter("table");

        if (table.length <= 0) {
            throw new Error("table2csv must be called on a <table> element");
        }

        if (table.length > 1) {
            throw new Error("converting multiple table elements at once is not supported yet");
        }

        var csv;

        switch (action) {
        case "download":
            csv = convert(table);
            download(exportOptions.filename, csv);
            break;
        case "output":
            csv = convert(table);
            $(exportOptions.appendTo).append($("<pre>").text(csv));
            break;
        default:
            throw new Error("\"action\" argument must be one of the supported action strings");
        }
        return this;
    };

}(jQuery));

$(document).ready(function () {
    $('table').each(function () {
        var $table = $(this);

        var $button = $("<button type='button'>");
        $button.text("Export to spreadsheet");
        $button.insertAfter($table);

        $button.click(function () {
            $table.table2csv();
        });
    });
})

// Hauptseite bearbeiten
// $(document).ready(function () {
// 	var el = document.getElementById("verstorbene");
// 	if(el) el.outerHTML = "";
// })