首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何修复:"Unable to get property 'value‘of undefined or null reference“

如何修复:"Unable to get property 'value‘of undefined or null reference“
EN

Stack Overflow用户
提问于 2019-05-12 04:01:26
回答 2查看 11.5K关注 0票数 1

我正在为我和我的朋友做一个简单的编码器/解码器,以便用代码相互交谈,或者至少它应该很简单。当我尝试引用我的任何元素时,我一直收到错误消息"Unable to get property 'value‘of undefined or null reference“。我觉得我正在做一件非常愚蠢的事情,而且很容易修复,但我看不到它。

我已经研究了几个相关的问题,并尝试了一堆建议的东西,但似乎都不起作用。顺便说一下,我正在使用Microsoft Edge,如果这有什么不同的话。

代码语言:javascript
运行
复制
var inMsg = document.getElementById("input")
var outMsg = document.getElementById("output")

document.addEventListener('keypress', (event) => {
  if (event.key == 'Enter') {
    try {
      event.preventDefault()
    } catch (e) {
      console.log(e)
    }
    try {
      console.log(inMsg.value)

    } catch (e) {
      console.log(e)
    }
  }
})
代码语言:javascript
运行
复制
<html>

<head>
  <script src="./main.js" type="text/javascript"></script>
  <style>

  </style>
</head>

<body>
  <div>
    <h2>Paste Coded Message Here -></h2>
    <textarea id="input" value=""></textarea>

    <textarea id="output"></textarea>
  </div>
</body>

</html>

通常我可以只记录值,没有问题,但当我对其执行console.log时,它会显示元素为null。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-05-12 04:12:40

尝试将defer添加到脚本标记中,如下所示:

代码语言:javascript
运行
复制
<script src="./main.js" type="text/javascript" defer></script>

我相信在脚本执行的时候html解析器还没有到达你的inMsg元素,所以这个元素的值是undefined

如果有效,请让我知道!

票数 0
EN

Stack Overflow用户

发布于 2019-05-12 04:15:21

将前两行移动到add event listener函数中。在dom就绪并且isMag变量填入null之前,可能会调用此函数。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56093835

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档