javascript - 如何解决:“无法获取未定义或空引用的属性‘值’”
问题描述
我正在为我和我的朋友制作一个简单的编码器/解码器,以便在代码中相互交谈,或者至少它应该很简单。当我尝试引用我的任何元素时,我不断收到错误“无法获取未定义或空引用的属性‘值’”。我觉得我正在做一些很容易修复的非常愚蠢的事情,但我看不到它。
我已经看过几个相关的问题,并且一直在尝试一堆建议的东西,但似乎没有任何效果。顺便说一句,如果这有所作为,我正在使用 Microsoft Edge。
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)
}
}
})
<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 时它说元素为空。
解决方案
尝试defer
像这样添加到您的脚本标签:
<script src="./main.js" type="text/javascript" defer></script>
我相信 html 解析器在脚本执行时还没有到达你的inMsg
元素,所以元素的值是undefined
.
让我知道这是否有效!
推荐阅读
- azerothcore - 使用 Linux (Ubuntu) 添加自定义脚本
- swift - MongoDB 领域 ObservableObject,SwiftUI?
- gremlin - Gremlin:检索包含匹配边缘的路径
- javascript - 外部 JavaScript 文件中的函数不会运行 OnClick
- unicode - Azure 服务总线消息触发 Azure 函数(unicode 消息)
- flutter - flutter_form_builder 以编程方式设置字段的值不起作用
- python - 将 numpy 数组中的所有像素替换为单独数组中的像素,除非值为 0
- javascript - 使用空系列线数据连接 3 个不同的 echart 图表
- r - 关于条形图的格式问题
- node.js - 节点服务器没有响应