问答详情
源自:2-1 JavaScript-输出内容(document.write)

关于document.write为什么会改变body里面的内容?(穿越问)

<head>

<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />

<script type="text/javascript">

function a(){

var myweek2=document.getElementById("schedule").value;

switch(parseInt(myweek2)){

case 1:

case 2:

document.write("学习理念知识");

break;

case 3:

case 4:

document.write("到企业实践");

break;

case 5:

document.write("总结经验");

break;

case 6:

case 7:

document.write("周六、日休息和娱乐");

break;

default:

document.write("信息出错了");

}

}

</script>

</head>

<body>

testtest

<label for="schedule">请输入工作日:</label>

<input type="text" name="plan" id="schedule">

<input type="button" name="button" onclick="a()" value="

点击我试试">

</body>

</html>

为什么我输入数字点了按钮以后, 文本框和我写在Body里面的test那些字全部都不见了??

如果是这样, 范例里面不是应该只显示一行文字吗?? 感觉 这个问题很白痴,但是我确实不太明白原因在哪里

提问者:rainy_li3676598 2016-09-23 14:45

个回答

  • 因颜获最
    2016-09-23 15:33:50
    已采纳

    打开新页面时,浏览器首先使用document.open()打开一个新文档,然后将下载的html文本通过document.write()写入,最后调用document.close()关闭文档流。
    你用button触发了一个函数,调用document.write()时原文档已关闭,此时调用document.write()会自动调用document.open()开启一个新文档,原文档内容不会写入这个新打开的文档,之后调用的document.write()因为本文档未关闭,都会被追加输出到此文档.加载完成后,自动关闭本文档.

  • 暮艏簽百度3930307
    2016-09-23 15:07:05

    因为Document.write的意思就是向页面输出一段指定的文本或者内容,而你并没有给它指定要出现的位置。

  • qq_Nothingisim3824819
    2016-09-23 15:06:34

    运行会刷新界面