我正在尝试创建一个复杂的网站,我想将其拆分为多个文件,其中一个是内容本身,为此,我想创建一个函数来更改文件中的div内容。 / p>
整个代码:
<html>
<body onLoad = "uploadData();">
<div id = "text"> </div>
</body>
<script>
function uploadData()
{
var file = new File("data");
file.open("r");
var data = "";
while (!file.eof) {
data += file.readln() + "\n";
}
file.close();
alert(data);
document.getElementById('text').innerHTML = data;
}
</script>
</html>
代码在第7行出现错误。 请帮助我!!!
答案 0 :(得分:3)
您无法在 现代 浏览器中以这种方式从文件中读取security reasons(脚本为sandboxed)。
也许您从非常老的非标准Javascript参考(例如 JavaScript程序员参考(由Cliff Wootton,2001年提供)或纯JavaScript )中获取了这些功能。 (丁查尔顿,杰森·吉拉姆,艾伦·怀克,1999年)。这些都是非常古老的手册,并且处理过时的浏览器版本(Internet Explorer 4 ...)。
您还可以在不是浏览器引擎的不是Adobe InDesign,NodeJS或ShellJS的JS引擎提供的API中找到这些功能或类似集合。使用JS引擎并不意味着您会找到与另一个引擎相同的API。通常,使用NodeJS和Firefox JS引擎(当前为OdinMonkey)不会做相同的事情。
如果您要使用外部资源(位于服务器中的文件)动态更改页面的内容(即DOM结构),请使用 Ajax 技术。 / p>
最后,in this SO question,您会找到一些获取本地文件内容的方法,但必须由用户手动选择。
答案 1 :(得分:0)
如果要创建复杂的网站,则需要Web服务器。假设您的内容不需要服务器端渲染并且已经安装了Apache,那么简单的XHR函数可以帮助您获取内容。如果普通的XHR没有帮助,jQuery也许可以简化事情。