首页 > 解决方案 > 如果找不到 ID (document.getElementById),希望 JS 继续

问题描述

我正在尝试使 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 语句,但我自己还不够好,而且谷歌没有为我提供我正在寻找的解决方案。

希望有人可以提供帮助!

标签: javascripthtml

解决方案


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 约束


推荐阅读