首页 > 解决方案 > jQuery 获取大的 csv 到 html 表

问题描述

我想制作一个大的 csv 到 html 表。

这是我的代码

<script type="text/javascript">
$.get('cases.csv', function(data) {

var html = "<table class='table' id='table'>";

var rows = data.split("\n");

// parse lines
var max = 10000;
var num = 0;
rows.forEach( function getvalues(ourrow) {
if (num < max) {
    num ++;
    if(num == 1){
        html += "<thead>";
    }
    html += "<tr>";

    var columns = ourrow.split(",");

    html += "<td>" + columns[0] + "</td>";
    html += "<td>" + columns[1] + "</td>";
    html += "<td>" + columns[2] + "</td>";
    html += "<td>" + columns[3] + "</td>";
    html += "<td>" + columns[4] + "</td>";
    html += "<td>" + columns[5] + "</td>";
    html += "<td>" + columns[6] + "</td>";
    html += "<td>" + columns[7] + "</td>";
    html += "<td>" + columns[8] + "</td>";
    html += "<td>" + columns[9] + "</td>";
    html += "<td>" + columns[10] + "</td>";
    html += "<td>" + columns[11] + "</td>";

    html += "</tr>";
    if(num == 1){
        html += "</thead>";
    }
} else {
    return false;
}

})
html += "</table>";

console.log(html);

$('#container-fluid').html(html);
$('#table').DataTable();

});


</script>

它可以工作,但只会导致我将“最大值”限制为 10000。如果我变得更高,它不会加载并且浏览器/选项卡崩溃。

有没有办法在 10000 之后加载 10000 ......所以第一个 10000,然后是下一个 10000 或其他什么?

CSV 有超过 900000 行,并在短时间内获得更多

我已经尝试过其他脚本,但之前最崩溃的脚本也无法运行。

我只想在一个漂亮的 html 表中显示 csv。

// 我已经尝试过如何在使用 javascript 和 ajax 将 CSV 文件加载到 html 表中时提高性能? 但这也行不通。它的加载和加载以及浏览器也死了

标签: jquery

解决方案


推荐阅读