gpt4 book ai didi

javascript - document.write() 覆盖文档?

转载 作者:技术小花猫 更新时间:2023-10-29 12:06:04 25 4
gpt4 key购买 nike

这个:

function myFunction()
{
document.write("sup");
}

在 html 中调用如下:

<div id="myDiv">
<script>myFunction();</script>
</div>t

将字符串 sup 添加到 myDiv div 元素。这正是我想要的。然而,这:

function loadFile(uri)
{
var r = new XMLHttpRequest();
document.write("trying to open: " + uri);
r.open('GET', uri, true);
r.send(null);
r.onreadystatechange = function()
{
if (r.readyState == 4)
{
myFunction();
}
}
}

function myFunction()
{
document.write("sup");
}

这样调用:

<div id="myDiv">
<script>loadFile("filename.txt");</script>
</div>

似乎覆盖了我的整个 html 文件。 IE。当我在 Firefox 中运行它时,它只显示字符串 sup (这是页面的全部内容)但页面似乎仍在加载(FF 的加载图标仍然在那里动画,显然是无限的).

首先,这将仅在本地离线使用,作为一种快速便捷的数据呈现方式(使用 html+js 和网络浏览器而不是纯文本文件)。我想要的是加载一个本地文本文件,然后将其中的一些内容作为 html 页面的一部分。与我的第一个示例相同,但首先加载文本文件。

最佳答案

问题是当您在加载文档后运行 document.write 时,它​​会覆盖整个文档。如果在此之前运行,则不会覆盖它。

您要做的是设置特定元素的 innerHtml,例如:

document.getElementById("myDiv").innerHTML="Sup";

关于javascript - document.write() 覆盖文档?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19941866/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com