1

好的,目标是从文件中复制 CSV 并将它们作为字符串存储在 javascript 中。

使用 Papaparse 我已经设法从 CSV 文件中获取内容,但我似乎无法将字符串保存在 papaparse 之外以在另一个脚本中使用。

我对 javascript 非常陌生,所以请善待 :)

while 循环是根据我的需要调整格式,但是,如果我可以获取数据,我可以在它当前所在的位置之外执行此操作。欢迎任何帮助,因为这让我发疯!非常感谢!!:D

<title>Test stuff</title>
<script src="./Plugins/papaparse.js"></script>
</head>
<body>
<p id="demo"></p>
<script>
Papa.parse("http://test_server/OpenSiteVisitTickets.csv", {
download: true,
complete: function(results) {
console.log("Remote file parsed!", results);
    var i= 0, x= [1],cname= [1],postc= [5],alenth = results.data.length -2;
        locations= [];
        while ( i < alenth )
            {
            var ltemp =[];

            ltemp = "[" + results.data[x] [cname] +", "+results.data[x] [postc] +"] ";
                locations = locations.concat(ltemp);
            i++,x++;
            }
    document.getElementById("demo").innerHTML = locations;
     }
    });
 </script>
 <script>
  // other script goes here and picks up locations var todo its funky shiz :)
 </script>

 </body>
 </html>
4

1 回答 1

2

感谢马特的回答;并感谢 Nepeo 为您提供有关全局变量的建议;

通过网络解析文件是异步的,因此在执行完整函数之前,您获得的任何结果都将不可用。“其他脚本在这里”需要等到触发完整的回调;或更可能的是,完整的回调必须调用该代码。– 马特 2 天前

创建全局变量的一种更简洁的方法是使用 window.locations = ... 或者更好的是只写 var 位置;在文件顶部并在回调中设置它。@Matt 是对的,尽管您可能正遭受异步痛苦!– nepeo 2 天前

于 2014-12-05T16:31:40.230 回答