我有这段代码:
<script>
function makeWindow() {
var result = window.open("", "Result", "width=600,height=600");
result.document.write(document.getElementById("txt").value);
}
</script>
<textarea id="txt"></textarea>
<br>
<button onClick="makeWindow();">Click</button>
如果我输入“Hello,World!”在textarea内部,当我按下按钮时,它会打开一个新窗口,上面写着“Hello,World!”。但是,如果我删除textarea(而不是窗口)中的所有内容并输入“Hello again!”,而不是得到“Hello again!”的结果,我得到的结果是“Hello,World!Hello again!”有人可以帮忙吗?提前谢谢!
答案 0 :(得分:4)
简短的解决方案:
result.document.body.textContent = document.getElementById("txt").value
document.write()
,有更复杂的方法来操纵窗口的内容。谷歌“HTML DOM”(文档对象模型),以了解HTML元素在JavaScript中的工作方式; MDN网站通常都有很好的材料。
答案 1 :(得分:-1)
MátéSafranka劝阻document.write
是正确的,但如果您确实想知道如何使用document.write
,那么您需要做的只是添加
result.document.close();
后
result.document.write(document.getElementById("txt").value);
每次调用makeWindow
时,都必须重新打开文档,将当前内容吹走。