当用户使用HTML5 File API按下按钮时,如何读取本地文件?
我正在尝试使用jQuery和HTML5 File API从本地文件中获取数据。 我想读取文件并从中获取文本,但仅在用户按下按钮时,而不是在输入字段的内容发生变化时。
这是我目前使用的代码:
files = $("#file").files; var reader = new FileReader(); reader.onload = function(event) { var content = event.target.result; alert(content); agregar(content[0]); alert(content); } reader.readAsText(files[0]);
当用户按下页面上的按钮时,将触发此代码。 我的问题是,当代码运行时, files
是未定义的,所以我无法从中获取所需的数据。 如何获取输入文件的内容,以便将其作为参数传递给FileReader.readAsText()
函数?
files
数组是 DOMElement的属性。 我不知道如何使用jQuery访问它,但是你总是可以使用
.get(0)
从jQuery元素获得支持DOMElement,所以你可以在这里访问你的文件:
var files = $('#file').get(0).files;
或者使用普通的javascript:
var files = document.getElementById('file').files;