2012-10-11 37 views
0

我已經瀏覽了幾個小時,查看了網絡上的不同選項,試圖理解 - 而不僅僅是複製 - 如何加載文本文件。我找不到任何我發現的例子,也就是說,直到我從鉻改爲Firefox。作爲一個例子,在計算器問題的代碼:HTML5 File api, reading in an xml/text file and displaying it on the page?我寫在這裏爲簡便起見:在html5 + javascript中讀取文本文件,結果取決於瀏覽器

<!DOCTYPE html> 
<html> 
<head> 
<title>reading xml</title> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
</head> 
<body> 
<input type="file" id="files" name="files[]" multiple /> 
<output id="list"></output> 

<script> 
    function handleFileSelect(evt) { 
    var files = evt.target.files; // FileList object 

    // Loop through the FileList 
    for (var i = 0, f; f = files[i]; i++) { 

     var reader = new FileReader(); 

     // Closure to capture the file information. 
     reader.onload = (function(theFile) { 
     return function(e) { 
      // Print the contents of the file 
      var span = document.createElement('span');      
      span.innerHTML = ['<p>',e.target.result,'</p>'].join(''); 
      document.getElementById('list').insertBefore(span, null); 
     }; 
     })(f); 

     // Read in the file 
     reader.readAsText(f); 
     // reader.readAsDataURL(f); 
    } 
    } 

    document.getElementById('files').addEventListener('change', handleFileSelect, false); 
    </script> 
</body> 

在Firefox的偉大工程。我無法讓它在鉻中工作。我錯過了什麼?!謝謝。

我使用的是Chromium 18.0.1025.168(開發版本的Linux 134367)的Ubuntu 11.10

+0

對我的作品在Chrome 22和15鉻與任何我不得不將到手(對於前者簡單的待辦事項文本文件,JSON後者)。 (http://jsfiddle.net/EYrdE/)。你有沒有嘗試過不同的文本文件?也許你在翻譯中失去了一些東西。你有沒有檢查控制檯的錯誤? –

回答

0

出於安全原因,使用裝載本地文件,我必須從命令行調用鉻:

chromium-browser --allow-file-access-from-files 

ATENTION:你必須關閉所有的窗口鉻爲此生效。

剛剛失去,因爲這四個小時左右......

+0

所以你通過file:// url運行它? –

+0

是的...有沒有更安全的方法來做到這一點? – cauchy

+0

那麼,我通常通過本地主機web服務器運行的東西,只是因爲我看到了你自己碰到的基於文件的URL的問題。 –

0

難道是這個?

for (var i = 0, f; f = files[i]; i++) { 

您的第二部分不應該是一個條件。像我< files.length?

+0

我是新來的JavaScript,所以留下了原來的代碼。將該行更改爲'代碼(var i = 0; i cauchy

+0

也許如此 - 就像net.uk.sweet說的那樣 - 你有沒有在控制檯中看到任何東西? –

+0

控制檯是空的。沒有鉻開發商的工具給出的錯誤。如果您嘗試讀取本地文件,我正在審閱與使用--allow-file-access-from-files相關的內容。顯然在一些版本的鉻這是一個問題。但一直未能找到對問題的正確迴應。 – cauchy

相關問題