getelementbyid innertext不工作

时间:2013-11-19 11:49:37

标签: javascript null getelementbyid innertext

您尝试使用getelementbyid和innerText,但它无法在任何浏览器中使用。当我打开错误控制台时,我收到以下错误消息

  

TypeError:'null'不是对象(评估'document.getElementById(“username”)。innerText = name')

这是我的代码:

<script>
alert("Using Javascript","");
var name = prompt("Please enter your name?", "");
var course = prompt("What course are you studying?", "");
document.getElementById("username").innerText = name;
document.getElementById("usercourse").innerText = course;
</script>

我不知道为什么我会收到空​​错误。

2 个答案:

答案 0 :(得分:0)

使用此:

document.getElementById("username").value = name;
document.getElementById("usercourse").value = course;

这有效。

答案 1 :(得分:0)

让我在解释之前提供答案来解决你的问题...

Working Solution

HTML更改...

USERNAME:<label id="username"></label>
         <br>
USER COURSE:<label id="usercourse"></label>

说明:现在HTML非常混乱,我确定不同的ppl可以用不同的方式来做,但是我想告诉你的是,如果元素不存在,你就不能引用它....

getElementByID本身就是自解释的。在你的问题中你看到你试图引用的2个id,因此控制台中出现“null”错误。您的HTML必须包含这2个ID。您可以从javascript动态添加元素,但这是另一个问题。

回到解决方案。

innerText不适用于Mozilla,因为它是Internet Explorer属性。它适用于Chrome但不适用于FF。因此,您应该考虑使用

Node.textContent