Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/assembly/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Javascript中返回$(“filename”).change()函数中的数组?_Javascript_Jquery Csv - Fatal编程技术网

如何在Javascript中返回$(“filename”).change()函数中的数组?

如何在Javascript中返回$(“filename”).change()函数中的数组?,javascript,jquery-csv,Javascript,Jquery Csv,我的代码基本上是尝试从.csv文件中读取数据,然后将文件数据返回到数组中。下面是$(“#filename”).change()函数部分: $("#filename").change(function(e) { var ext = $("input#filename").val().split(".").pop().toLowerCase(); if($.inArray(ext, ["csv"]) == -1) { alert('Upload CSV'); return

我的代码基本上是尝试从.csv文件中读取数据,然后将文件数据返回到数组中。下面是$(“#filename”).change()函数部分:

$("#filename").change(function(e) {
  var ext = $("input#filename").val().split(".").pop().toLowerCase();

  if($.inArray(ext, ["csv"]) == -1) {
    alert('Upload CSV');
    return false;
  }

  if (e.target.files != undefined) {
    var reader = new FileReader();
    reader.onload = function(e) {
        var csvval=e.target.result.split("\n");
      var path0 = [];
      for (var j=0; j<csvval.length; j++) {
        var csvvalue=csvval[j].split(",");
        if (csvvalue[1] === "TN04G0628" && csvvalue[2] !== "0") { 
          var ptr = {lat:parseFloat(csvvalue[2]), lng:parseFloat(csvvalue[3])};
          path0.push(ptr);
        }
      }

      for (var p=0; p<path0.length; p++) {
        console.log(path0[p]);
      }

    };
    reader.readAsText(e.target.files.item(0));
  }

  return false;

});
$(“#文件名”).change(函数(e){
var ext=$(“输入文件名”).val().split(“.”.pop().toLowerCase();
if($.inArray(ext,[“csv”])=-1){
警报(“上传CSV”);
返回false;
}
如果(e.target.files!=未定义){
var reader=new FileReader();
reader.onload=函数(e){
var csvval=e.target.result.split(“\n”);
var path0=[];

对于(var j=0;jReturn,确切地说,
onload()
函数是异步的,您不能仅从它返回?您可以将path0变量移到函数外部。出现错误的原因是您试图在设置path0之前使用它,或者因为无论在哪里调用它,都无法识别该变量。请准确返回
onload()
函数是异步的,您不能仅从它返回?您可以将path0变量移到函数外部。出现错误的原因是您试图在设置path0之前使用它,或者无论您在哪里调用它,都无法识别该变量。