2016-08-14 52 views
2

而不是显示一个输入按钮来选择文件名是否有硬连线我的根文件夹中的一个特定的文件名,它是自动加载? (不寻找用户选择文件名)修改evanplaice优秀的CSV到二维数组的JS代码...所以我想坚持使用输入...我看到有方法隐藏按钮使用CSS样式0的不透明度......预先感谢克里斯。自动加载输入文件中的文件名=“”

的文件名,我想迫使/硬线是“SocialabSchedule2clean.csv”

<input type="file" id="files" name="files[]" /> 
var files = evt.target.files; // FileList object 
    var file = files[0]; 

function handleFileSelect(evt) { 
    var files = evt.target.files; // FileList object 
    var file = files[0]; 

    // read the file contents 
    printTable(file); 

    // post the results 
    $('#list').append(output); 
} 

function printTable(file) { 
    var reader = new FileReader(); 
    reader.readAsText(file); 
    reader.onload = function(event){ 
    var csv = event.target.result; 
    var data = $.csv.toArrays(csv); 
    var html = ''; 
    for(var row in data) { 
     html += '<tr>\r\n'; 
     for(var item in data[row]) { 
     html += '<td>' + data[row][item] + '</td>\r\n'; 
     } 
     html += '</tr>\r\n'; 
    } 
    $('#contents').html(html); 
    }; 
    reader.onerror = function(){ alert('Unable to read ' + file.fileName); }; 
} 

+1

自动加载无需用户交互的文件将允许任何网站,上传您的硬盘驱动器到他们的服务器的全部内容,没有你甚至不注意到。那不会那么好。 – Siguza

+0

谢谢Siguza,但我会硬连接在我自己的页面/服务器上加载的文件的位置和名称。 – InverseMedia

+1

在这种情况下,我相信你需要[XMLHttpRequest](https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest),而不是文件输入字段。 – Siguza

回答

0

如果您需要从您的网络服务器加载文件一样@siguza建议你可以使用请求。

$.get("path/to/SocialabSchedule2clean.csv", function(response, status){ 
    if(status=="succes"){ 
     var data = $.csv.toArrays(response); 
     var html = ''; 
     for(var row in data) { 
      html += '<tr>\r\n'; 
      for(var item in data[row]) { 
      html += '<td>' + data[row][item] + '</td>\r\n'; } 
      html += '</tr>\r\n'; 
     } 
     $('#contents').html(html); 
    } 
}); 
+0

这个作品,谢谢扬Jouke Tjalsma和@Siguza。 – InverseMedia

+0

@InverseMedia不客气!如果此问题或其他解决方案解决了您的问题,请点击复选标记以接受该答案。 –

+0

我试过了,但这是回复:感谢您的反馈!记录下名声低于15的人的投票记录,但不要更改公开显示的帖子分数。 – InverseMedia

0

这个工程除了状态衰竭MISSING FILENAME

<html> 
<head> 
<meta charset="utf-8" /> 
<title>Demo - CSV-to-Table</title> 
</head> 

<body> 

<table id="contents" style="width:100%; height:400px;" border> 
</table> 

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script> 
<script src="http://www.inversemedia.com/socialab/Test3/jquery.csv.js">  </script> 
<script> 

document.getElementById("contents").innerHTML = "STARTING UP"; 

    $.get("http://www.inversemedia.com/socialab/Test3/SocialabSchedule3clean.csv", function(response, status){ 
alert("Status: " + status); 
if(status=="success"){ 
    var data = $.csv.toArrays(response); 
    var html = ''; 
    for(var row in data) { 
     html += '<tr>\r\n'; 
     for(var item in data[row]) { 
     html += '<td>' + data[row][item] + '</td>\r\n'; } 
     html += '</tr>\r\n'; 
    } 
    $('#contents').html(html); 
} 
else 
document.getElementById("contents").innerHTML = "FAILURE"; 
}); 

</script> 
</body> 
</html>