我是JavaScript和一般网站的新手 - 请原谅我这个问题听起来有点基础。
但是,我们的想法是在每个页面上显示一条弹出消息,说明一些信息。由于网站是静态的 - 如果以后我们想要更改消息,我们将不得不编辑每一页。
为了简化这一点,我一直试图在服务器上包含一个简单的文本文档。
页面将读取文本文档并显示消息。
因此,我们只需编辑文本文档,页面上显示的信息就会发生变化。
我的代码是这样的:
<div class="sticky-box" id="x">
<div class="sticky-inner">
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/mootools/1.2.4/mootools-yui-compressed.js"></script>
<script type="text/javascript"></script>
<script>
window.addEvent("domready",function(){
var csvRequest = new Request({
url:"text.txt",
onSuccess:function(response){
document.write(response);
}
}).send();
});
</script>
</div>
同时,它成功读取文档 - 它显示文本而不是网页。简而言之,我在页面上得到“一些示例文本”,但没有别的。
任何人都有任何想法?
有更简单的方法吗?
注意:重做网站不是选项!
答案 0 :(得分:1)
而不是document.write(response)
你应该在页面上创建一个容器,说一个div或span元素,并在该容器中写入数据。在页面加载完成后使用documen.write()
时,浏览器会打开一个新文档并替换当前文档的内容。
以下代码应该有所帮助:
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/mootools/1.2.4/mootools-yui-compressed.js"></script>
<script type="text/javascript"></script>
<script>
window.addEvent("domready",function(){
var csvRequest = new Request({
url:"text.txt",
onSuccess:function(response){
document.getElementById("sticky_inner").innerHTML= response;
}
}).send();
});
</script>
<div class="sticky-box" id="x">
<div class="sticky-inner" id="sticky_inner"></div>
</div>
答案 1 :(得分:1)
这是因为您正在使用document.write(response)
。 document.write
只会创建一个空白文档并在其上写下内容。您应该使用例如div
元素并写入
其中的数据。
更多关于document.write