无法使用document.getElementById修改变量中此元素的文本

时间:2017-01-18 20:34:12

标签: javascript dom

我有这个简单的代码无法让它工作。请帮帮我!

<p id="p">
   Test
</p>

<script>
  var p_tag = document.getElementById("p");

  document.p_tag.innerHTML = "Hey";
</script>

4 个答案:

答案 0 :(得分:1)

删除文档。来自p_tag之前。

<script>
  var p_tag = document.getElementById("p");

  document.p_tag.innerHTML = "Hey";
</script>

更改为:

<script>
  var p_tag = document.getElementById("p");

  p_tag.innerHTML = "Hey";
</script>

答案 1 :(得分:1)

可能你正在尝试这样做

<p id="p">
   Test
</p>

<script>
  var p_tag = document.getElementById("p");
    p_tag.innerHTML = "Hey";
</script>

document已经在var中,所以不要复制它

答案 2 :(得分:1)

p_tag是一个变量。你宣布它是这样的。已经HTMLElement引用了现有的<p id="p">Test</p>,因此您必须像这样使用它:

p_tag.innerHTML = "Hey";

document与您声明的变量没有任何关系,因此p_tag上不会有document属性。

你也可以简单地把它变成:

document.getElementById("p").innerHTML = "Hey";

答案 3 :(得分:0)

<p id="p">
   Test
</p>

<script>
  var p_tag = document.getElementById("p");// get link of html element where id="p" 

  It is error: document.p_tag.innerHTML = "Hey";
  It is valid code: p_tag.innerHTML = "Hey";// overwrites the entire contents inside the element to "Hey"
</script>