我有一个文本区域,可以通过键盘输入进行编辑。我还想能够使用HTML输入加载文件。我已经使用onchange事件完成了这个功能(请查看下面的jsfiddle代码)。
假设我使用文件加载器加载了一个文件 - 在示例中正常工作。 然后,我编辑了这个文件。意识到所做的更改不是想要的,我想重新加载这个文件。但是,当使用HTML输入时,什么也没有发生,因为所选文件保持不变(onchange事件未触发)。是否有一种方法可以使用HTML输入重新加载文件?(我找到的唯一解决方法是加载不同的文件,然后重新加载原始文件...这不是非常优雅。) http://jsfiddle.net/aroberge/8PZyK/1/
假设我使用文件加载器加载了一个文件 - 在示例中正常工作。 然后,我编辑了这个文件。意识到所做的更改不是想要的,我想重新加载这个文件。但是,当使用HTML输入时,什么也没有发生,因为所选文件保持不变(onchange事件未触发)。是否有一种方法可以使用HTML输入重新加载文件?(我找到的唯一解决方法是加载不同的文件,然后重新加载原始文件...这不是非常优雅。) http://jsfiddle.net/aroberge/8PZyK/1/
var load_file = function() {
$("#fileInput").show();
var fileInput = document.getElementById('fileInput');
fileInput.addEventListener('change', function(e) {
var file = fileInput.files[0];
var reader = new FileReader();
reader.onload = function(e) {
$("#editor").text(reader.result);
$("#fileInput").hide();
};
reader.readAsText(file);
});
};
$("#load").on("click", function(evt) {
load_file();
});