【发布时间】:2022-01-10 23:16:44
【问题描述】:
加载后,我尝试在我的网页上显示我的数据库元素。
我使用 AJAX 获取这些元素并且效果很好。
问题是当我尝试分配容器 (myTable) 以将我的元素 (elementsOfDataBase) 放在那里时。
我在控制台中收到错误“JavaScript Uncaught TypeError: myTable is null”。
我使用 DOM getElementById。 ID 'my-Table' 是唯一的。
知道我做错了什么吗?
myJs.js
$.ajax({
type: 'GET',
url: 'myUrl/',
success: function(response){
console.log('success')
let elementsOfDataBase = response.table
const myTable = document.getElementById("my-Table");
elementsOfDataBase.map(item => {
const div = document.createElement('div')
div.innerHTML += item.fields.item
div.innerHTML += '<br>'
myTable.appendChild(div);
})
},
error: function (error){
console.log('error')
},
})
home.html
<div id="my-Table"></div>
【问题讨论】:
-
提供的代码 sn-p 不会触发给定的错误,
myElement不会出现在示例中。 -
这段代码中没有myElement
-
id 为
my-Table的元素在您引用它时不存在。为什么不清楚,例子不够广泛。请添加一些代码,以便我们可以重现该问题。另外,不要使用map来迭代数组,forEach存在于该任务中。 -
我解决了。
<div id="my-Table"></div>在我的 html 文件的底部。当我把它放得更高时,它开始工作。我真的是 Js 的新手,我不知道这到底是如何工作的,但现在一切都按照我的意愿显示。感谢您的帮助
标签: javascript dom