Laui exportiert alle Daten in der Tabelle

Freigeben: 2019-11-18 17:12:59
nach vorne
9624 Leute haben es durchsucht

layui (homophon: UI-like) ist ein Front-End-UI-Framework, das mit seinen eigenen Modulspezifikationen geschrieben wurde. Es folgt der Schreib- und Organisationsform von nativem HTML/CSS/JS. Der Schwellenwert ist extrem niedrig und kann verwendet werden der Box.

Laui exportiert alle Daten in der Tabelle

Die mit Laui gelieferte Exporttabelle kann nur die aktuelle Seite exportieren. Wenn die aktuelle Seite alle Daten enthält, bedeutet dies, dass alle Daten exportiert werden Beim Exportereignis wird eine separate Anforderung definiert. Wenn Daten im Hintergrund abgefragt werden, werden nicht die empfangenen Seiten und das Limit abgefragt, sondern alle werden abgefragt, wodurch der Export aller Daten realisiert wird.

Seitencode:

<!--导出按钮 或其他触发事件-->
<button class="export">导出报表</button>

<!--导出表 不展示-->
<div style="display: none;">
    <table id="data_export">
    </table>
</div>
Nach dem Login kopieren
layui.use([&#39;form&#39;, &#39;table&#39;, &#39;layer&#39;], function () {
        var table = layui.table,
            form = layui.form,
            layer = layui.layer;
        //导出表格
        var ins1 = table.render({
            elem: &#39;#data_export&#39;,
            url: "url", //数据接口
            method: &#39;post&#39;,
            title: &#39;导出表的表名&#39;,
            where: {
                mycode: "all"
            },
            limit: 10,
            cols: [[
                {field: &#39;id&#39;, title: &#39;ID&#39;},
                {field: &#39;name&#39;, title: &#39;名称&#39;},
            ]],
            done: function (res, curr, count) {
                exportData = res.data;
            }
        });
        //导出按钮
        $(".export").click(function () {
            table.exportFile(ins1.config.id, exportData, &#39;xls&#39;);
        });
    })
Nach dem Login kopieren

Hintergrundverarbeitung:

if ($mycode) {    $data = M(&#39;mysql&#39;)->where($where)->select();  
    echo json_encode([&#39;code&#39; => 0, &#39;msg&#39; => "", &#39;data&#39; => $data]);                     
}
Nach dem Login kopieren

Optimierung: Der entsprechende Code ist der zweite js-Code oben:

//导出改为单独的事件,每次点击导出才会执行
    $(".export").click(function(){
        var ins1=table.render({
            elem: &#39;#data_export&#39;,
            url: "url", //数据接口
            method: &#39;post&#39;,
            title: &#39;表名&#39;,
            where: {
                mycode: "all"
            },
            limit: 10,
            cols: [[
                {field: &#39;id&#39;, title: &#39;ID&#39;},
                {field: &#39;name&#39;, title: &#39;名字&#39;},
            ]],
            done: function (res, curr, count) {
                exportData=res.data;
                table.exportFile(ins1.config.id,exportData, &#39;xls&#39;);
            }
        });
    })
Nach dem Login kopieren

ist eigentlich die Tabelle. exportFile(ins1.config.id,exportData, 'xls'); wird in done platziert. Obwohl es anscheinend nicht viele Änderungen gibt, hat sich das Wesentliche geändert. Die vorherige Methode bestand darin, die ausgeblendete Exporttabelle zu laden.

Jetzt wird die ausgeblendete Exporttabelle nur gerendert, wenn auf „Exportieren“ geklickt wird. Wenn die Exporttabelle viel Inhalt enthält, denken Benutzer, dass eine langsamere Exportgeschwindigkeit sinnvoll und viel besser ist als eine langsame Seitenladegeschwindigkeit .

Weitere Informationen zu Lauii finden Sie im Layui-Framework.

Das obige ist der detaillierte Inhalt vonLaui exportiert alle Daten in der Tabelle. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:cnblogs.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!