是否有可能从文件名加载带有JS/HTML5 FileReader的文件而没有输入文件?
问题描述:
我想更改另一个HTML文件内容的<article>
元素内容,但搜索我发现这是不可能的与JS加载功能,因为本地文件的Chrome安全。是否有可能从文件名加载带有JS/HTML5 FileReader的文件而没有输入文件?
我尝试过的另一种情况是包含<embed>
或<object>
元素,但是那些我无法动态控制高度的元素,只能以“height”属性以静态方式进行控制。
最后,我发现FileReader utility
,但我只使用一个<input type="file">
元素观察它。
如何仅使用文件名加载Html文件?
// No input needed, I know what I want to read
var reader = new FileReader();
reader.readAstext("anotherpage.html", "UTF-8");
由于提前,
答
您可以使用Ajax做到这一点:
$.ajax({
type : 'GET',
url : path + name + '.html',
dataType : "text",
success : function(data) {
// TODO success, for example
$(articleSelector).html(data);
}
});
答
这是不可能的。 在客户端JavaScript中,禁止直接读取磁盘中的文件。即使在Chrome扩展程序(https://developer.chrome.com/extensions/index.html)中,也很难获得权限。您可以认为这是一项安全策略。