2010-12-06 69 views
1

我想根据文本文件做一些基本的计算。然而,因为它是为了客户,所以它需要简单直接。是否有可能纯粹在客户端进行这些计算。如果有人选择一个文件通过表单上传。我是否可以通过Javascript捕获并通过这种方式处理?Javascript读取正在通过表格上传的文本文件

回答

8

马蒂是正确的,与HTML 4你运气不好。

但是,通过使用FileReader API,可以使用HTML 5。目前对此功能的支持仅限于最新版本的Chrome,Firefox和Opera。旧版本的Firefox中存在类似的功能,这也可以通过使用ActiveX在旧版本的Internet Explorer中完成。我会想象Google Gears也会允许这样做,尽管我没有看过它。

的Javascript功能来做到这一点看起来像:

$("#files").change(function(event) 
{ 
    var reader = new FileReader(); 
    reader.onload(e) { /* handle a file being loaded. contents in event.result */ }; 
    reader.onerror(e) { /* handle an error during the file reading */ }; 

    var files = event.target.files; 

    for(var i = 0; i < files.length; i++) 
     console.log(reader.readAsText(files[i])); 
}); 

哪里#files很简单:

<input type="file" id="files" multiple /> 
+0

我不知道,如果事情已经改变,因为这被写了,但我看到的结果event.target.result而不是event.result。 – svachalek 2012-12-20 17:52:43