【问题标题】:Uncaught TypeError: Cannot read property 'innerText' of null [duplicate]未捕获的类型错误:无法读取 null 的属性“innerText”[重复]
【发布时间】:2019-10-19 20:52:02
【问题描述】:

我不知道这个错误,因为我只是检查了所有其他主题并没有得到结果。

let demo = document.getElementById("#demo");
demo.innerText("yo");
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Pract</title>
</head>
<body>
    <script src="javascript.js"></script>
    <p id="demo"></p>
</body>
</html>

【问题讨论】:

  • 请不要以使现有答案无效的方式编辑您的问题。
  • @zakaria-acharki 这个问题怎么重复?
  • 副本显示了必须如何使用innerText 属性。
  • @ZakariaAcharki 不是。在另一个问题中,OP 已经知道如何使用.innerText,问题出在代码的其余部分(这就是答案的意义所在)。在这个问题中,有三个单独的问题,其中只有一个与.innerText 有关。
  • 感谢您的干预,副本已更新...

标签: javascript


【解决方案1】:

//currently your id is demo

let demo = document.getElementById("demo");
demo.innerText="yo";

///if your id is  #demo use this
let demo2 = document.getElementById("#demo");
demo2.innerText="yolo";
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Pract</title>
</head>
<body>
    <script src="javascript.js"></script>
    <p id="demo"></p>
    <p id="#demo"></p>
</body>
</html>

由于您的 id 是 demo,而不是 #demo,因此您需要这样编写代码:

let demo = document.getElementById("demo");  // don't use #
demo.innerText = "yo";  // Also change innerText like this

要更改innerText 属性,请查看docsinnerText 不是方法。

【讨论】:

  • 多解释一点也不是坏事(而不仅仅是行尾的 cmets)
  • 它是真的,但没有解决主要错误
  • @Tafhim 那是因为你的&lt;script&gt; 标签在文档正文的开头,所以当脚本运行时,&lt;p id="demo"&gt; 还不存在。您需要将&lt;script&gt; 移动到正文的末尾。
猜你喜欢
  • 2015-04-21
  • 1970-01-01
  • 2021-11-18
  • 2022-06-13
  • 2012-08-01
  • 1970-01-01
  • 2022-01-19
  • 2021-12-01
相关资源
最近更新 更多