2

提前道歉,因为我对 javascript 很陌生。从本质上讲,我拼凑了 2 个脚本,我正在努力开始工作。我知道 javascript 通常无法访问本地文件,但有File object可能吗?

在下面的代码中,如果我选择的文件是 CSV,我如何将它传递给下一个函数$.get('data.csv', function(data),那么'data.csv'实际上是选择了文件吗?

<html>
<script type="text/javascript">

    document.getElementById('file').addEventListener('change', handleFileSelection, false);

    function handleFileSelection(evt) {
      console.log(evt);
      var f = evt.target.files[0];   
    }

    $(document).ready(function() {

      $.get('data.csv', function(data) {
        // Split the lines
        var lines = data.split('\n');

        //more code

      });

    });
</script>

<body>
    <input type="file" id="file" name="file" />
    <output id="list"></output>
</body>

</html>

​</p>

4

1 回答 1

1

我在这里看到的第一个问题是您试图在创建实际元素之前添加事件侦听器(如 RobG 所说)。

我可以提到的第二个问题是您试图用来$.get解析该本地 CSV 文件。如果您使用的是 jQuery,则$.get向某个 URL 发出 GET 异步请求,这不是您所需要的。您必须调查 FileReader 对象。我对它不熟悉,所以我不能带来工作代码的例子,但你可以在这里寻找一些例子。

于 2012-09-11T00:48:50.400 回答