From e02a942e514db4466185b2d6bcfba7dae86d365a Mon Sep 17 00:00:00 2001 From: Kazuhiro Fujieda Date: Tue, 9 Apr 2019 22:05:48 +0900 Subject: [PATCH] =?utf8?q?=E5=90=84=E7=A8=AE=E5=A0=B1=E5=91=8A=E6=9B=B8?= =?utf8?q?=E3=81=AE=E8=A1=A8=E3=82=92=E5=88=97=E5=8D=98=E4=BD=8D=E3=81=A7?= =?utf8?q?=E6=A4=9C=E7=B4=A2=E5=8F=AF=E8=83=BD=E3=81=AB=E3=81=99=E3=82=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- LogViewer/tags.tag | 96 +++++++++++++++++++++++++++++++++++++----------------- 1 file changed, 67 insertions(+), 29 deletions(-) diff --git a/LogViewer/tags.tag b/LogViewer/tags.tag index 0bcb4a3..9521826 100644 --- a/LogViewer/tags.tag +++ b/LogViewer/tags.tag @@ -74,6 +74,9 @@ this.rangeTabChange = function(e) { + + + @@ -99,9 +102,6 @@ this.jsons = [ ]; this.on("mount", function() { - var records = this.root.querySelectorAll("tr"); - for (var i = 0; i < records.length; i++) - records[i].innerHTML = this.tables[i]; this.init(); }); @@ -119,34 +119,72 @@ opts.observable.on("logRangeChanged", function() { this.init = function() { for (var t = 0; t < this.tables.length; t++) { - var opts = { - destroy: true, - deferRender: true, - stateSave: true, - order: [[0, "desc"]], - pageLength: 50, - lengthMenu: [[50, 100, 200, -1], [50, 100, 200, "All"]], - drawCallback: function() { - $('#loading').hide(); - } - }; - if (t === 0) { - opts.columns = [{data: 0}, {data: 1}, {data: 39}, {data: 2}, {data: 3}, {data: 4}, {data: 9}, {data: 10}]; - } else if (t === 1) { - var entries = []; - for (var i = 0; i < 38; i++) { - if (i === 2) - entries.push({data: 39}); - if (i === 9 || i === 10) - continue; - if (i === 23) - entries.push({data: 38}); - entries.push({data: i}); - } - opts.columns = entries; + var table = $('#log' + t); + self.setHeaderAndFooter(table, self.tables[t]); + var dTable = table.DataTable(self.tableOptions(t)); + self.searchSetup(dTable); + } +}; + +this.tableOptions = function(tableId) { + var opts = { + destroy: true, + deferRender: true, + stateSave: true, + order: [[0, "desc"]], + pageLength: 50, + lengthMenu: [[50, 100, 200, -1], [50, 100, 200, "All"]], + drawCallback: function() { + $('#loading').hide(); } - $('#log' + t).dataTable(opts); + }; + if (tableId === 0) { + opts.columns = self.dropColumns(); + } else if (tableId === 1) { + opts.columns = self.sortieColumns(); } + return opts; +}; + +this.dropColumns = function() { + return [{data: 0}, {data: 1}, {data: 39}, {data: 2}, {data: 3}, {data: 4}, {data: 9}, {data: 10}]; +}; + +this.sortieColumns = function() { + var entries = []; + for (var i = 0; i < 38; i++) { + if (i === 2) + entries.push({data: 39}); + if (i === 9 || i === 10) + continue; + if (i === 23) + entries.push({data: 38}); + entries.push({data: i}); + } + return entries; +}; + +this.setHeaderAndFooter = function(table, header) { + table.find("thead tr").first().html(header); + var footer = table.find("tfoot tr"); + table.find("th").each(function(index) { + footer.append( + ''); + }); +}; + +this.searchSetup = function(dTable) { + self.setupCellSearch(dTable); +}; + +this.setupCellSearch = function(dTable) { + dTable.columns().every(function() { + var that = this; + that.search(""); // reset + $('input', this.footer()).on("input search", function() { + that.search(this.value, true, false).draw(); + }); + }); }; this.show = function() { -- 2.11.0