![](/img/trans.png)
[英]Js, document.getElementById("ID").innerHTML, error
[英]Want JS to continue if ID (document.getElementById) isn't found
我正在尝试制作一个JavaScript,只是“忽略”缺少的div-id并继续运行。 一直在寻找解决方案,但是大多数解决方案要么替换丢失的ID,要么将信息放入已经存在的ID中。 我只希望我的脚本“正常”,因为不会找到某些ID。
var Info01 = `Some text`;
document.getElementById("Info01").innerHTML = Info01;
var Info02 = `Some other text`;
document.getElementById("Info02").innerHTML = Info02;
如果不存在div-id“ Info01”,我希望它很酷,然后执行下一行,依此类推。
我一直在尝试一些if语句,但我不足以让我自己弄清楚它,而google并没有为我提供所需的解决方案。
希望有人可以提供帮助!
尝试这样的事情:
检查具有该ID的元素是否首先存在。
var Info01 = "Some text";
if(document.getElementById("Info01")) {
document.getElementById("Info01").innerHTML = Info01;
}
var Info02 = "Some other text";
if(document.getElementById("Info02")) {
document.getElementById("Info02").innerHTML = Info02;
}
Zachary McGee的答案再进一步一点。 您可以避免重复(并在DOM中获取两次ID):
const info01 = "Some text" const info02 = "Some other text"; const setText = (id, content) => { const item = document.getElementById(id) if (item === null) return item.innerText = content } setText("Info01", info01) setText("Info02", info02)
<div id="Info02"></div>
同样不是我使用.innerText
而不是.innerHTML
,因为前者足以满足您的问题,而后者则受XSS的约束 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.