Используя API файлов HTML5, я создал для пользователя механизм выбора файла со своего компьютера, который затем читается как строка и обрабатывается в приложении. Код, однако, не работает в IE9, поэтому я ищу решение, которое работает. Это мой код, который создает объект для чтения файлов:
function CreateFileReader(element)
{
var self=this;
// create an input field and insert it into the document
this.element=element;
this.element.html('');
var fileBox=$('<input type="file"/>');
this.element.append(fileBox);
// when the contents (file) of the fileBox change, read the file
this.fileBox.change(function () {
if (this.files.length > 0){
if (this.files[0]!=undefined) {
var file=this.files[0];
// set up the file reader
var reader = new FileReader();
reader.file=file;
// specify what happens when the file is loaded
reader.onloadend = self.processFile;
// read the file as a text string
reader.readAsText(file);
}
}
});
}
CreateFileReader.prototype.processFile = function(e) {
// if the file was loaded successfully
if (e.target.error==null && e.target.readyState==2) {
var fileString=e.target.result;
// do some stuff with fileString here
}
}
Буду признателен, если бы вы могли предложить альтернативы, которые работают в IE9.