我有一个html页面:
<html>
<head>
<script type="text/javascript">
function myfunct()
{
window.location='test.html';
document.getElementById("message")="hello";
}
</script>
</head>
<body>
<input type="button" value="click" onclick="myfunct()"/>
</body>
</html>
的test.html:
<html><head></head>
<body>
<div id="message">Some text</div>
</body>
</html>
问题是window.location
工作正常,但div没有更新为“你好”。
答案 0 :(得分:2)
您不能将字符串分配给元素,您必须使用innerHTML
属性。此外,由于元素位于您打开的页面中,因此您必须在该页面中包含代码。
的test.html:
<html>
<head>
<script type="text/javascript">
window.onload = function() {
document.getElementById("message").innerHTML = "hello";
}
</script>
</head>
<body>
<div id="message">Some text</div>
</body>
</html>
如果您想从第一页开始发送消息,您必须将其作为数据发送到新页面,以便它可以显示它:
在第一页:
window.location.href = 'test.html?hello';
在test.html中:
window.onload = function() {
document.getElementById("message").innerHTML = window.location.search.substr(1);
}
答案 1 :(得分:1)
您尝试设置为“Hello World”的元素在您正在运行的页面上不存在。您只能访问当前页面上的元素。页面刷新发生时,它会从请求的页面重新创建HTML DOM。您无法直接访问其他页面DOM。
答案 2 :(得分:1)
你必须写
功能myfunct() { 的document.getElementById( “消息”)= “你好”; }
在test.html页面中...
并在页面加载test.html的事件
上调用此函数答案 3 :(得分:1)
你必须写在test.htm
document.getElementById("message")="hello";
不在您的HTML中