2015-11-10 118 views

回答

6

您可以使用File和FileReader对象来读取本地文件。

您可以使用type =“file”的输入元素来允许用户选择文件。

<input id="myFile" type="file"/> 
<textarea id="myTextArea" rows="4" columns="20"></textArea> 

用户选择文件后,可以从输入元素获取File对象。例如...

var file = document.getElementById("myFile").files[0]; 

然后,您可以使用的FileReader对象来读取文件到文本区域。例如...

var reader = new FileReader(); 
reader.onload = function (e) { 
    var textArea = document.getElementById("myTextArea"); 
    textArea.value = e.target.result; 
}; 
reader.readAsText(file); 
0

我发现这个一个老话题: How do I load the contents of a text file into a javascript variable?

有您已经阅读最后的答案吗?这适用于div而不是文本框,但您可以稍微修改代码。

在最后一块最后的评论者后,你可以改变这一行:

document.getElementById("id01").innerHTML = out; 

到:

document.getElementById("textbox01").innerHTML = out; 

而在你的HTML:

<textarea name="textbox01">Enter text here...</textarea> 

结果:

function loadFile() { 
    var xmlhttp = new XMLHttpRequest(); 
    var url = "file.txt"; 

    xmlhttp.onreadystatechange = function() { 

     if (xmlhttp.readyState == 4 && xmlhttp.status == 200) { 
      var myArr = JSON.parse(xmlhttp.responseText); 
      myFunction(myArr); 

      console.log("xmlhttp Request Asepted"); 
     } 


    } 

     xmlhttp.open("GET", url, true); 
     xmlhttp.send(); 


     function myFunction(arr) { 
      var out = ""; 
      var i; 
      var row = 0; 

     for(i = 0; i < arr.length; i++) { 
      // console.log(arr[1].data); change data to what every you have in your file 
      // out += arr[i].data + '<br>' + arr[i].data2 ; 
      document.getElementById("textbox01").innerHTML = out; 

     } 

    } 
} 
+0

我认为这将导入文本文件从URL(即服务器),而不是我的本地机器 – Jed

+0

您可以使用USBWebserver作为本地主机服务器,这是我做什么,当我需要利用cookies。 – iSidle

相关问题