【问题标题】:can <span id="textArea1"></span> be re-used in the DOM? [duplicate]<span id="textArea1"></span> 可以在 DOM 中重复使用吗? [复制]
【发布时间】:2022-01-06 12:54:15
【问题描述】:

我编写了一个简单的 NodeJS/express API,提供一个 HTML 页面。该页面包含一个 javascript 表单,使用 axios 将日期发送到服务器。服务器进行计算并发送回响应。然后将响应切成小块,它们的值写为 .innerHTML "id"s。

                axios({
                        method: "post",
                        url: "/",
                        data: data,
                    })
                    .then((res) => {
                        document.getElementById("textArea1").innerHTML = res.data.earth.lon;
                        document.getElementById("textArea2").innerHTML = res.data.earth.lat;

我注意到每个“id”在正文中只能使用一次。如果我两次写同一行(注意 "textArea1"):

    <p> longitude: <span id="textArea1"></span>&deg;</p>
    <p> longitude: <span id="textArea1"></span>&deg;</p>

...只有第一个有值。

我猜“id”在 DOM 中是唯一的,不能重复使用?我不需要它两次,我只是注意到它在做一些复制粘贴。

如果我需要两次使用相同的“id”,是否有一种简单的方法?

谢谢,洛伦佐

【问题讨论】:

  • 不,您需要使用唯一的 ID。
  • 只使用一个类。
  • 您正在选择 document.getElementByID("textArea2"),但 DOM 中没有 ID 为 textArea2 的元素。

标签: javascript html dom axios innerhtml


【解决方案1】:

使用唯一 id 的原因是为了你的浏览器,作为开发者的你可以正确处理 dom 元素,避免很多问题。

弄清楚你的邻居,一个邮政编码相同的房子,号码将很难确保邮政递送确定房子是否正确。

您不会禁止创建 id 相等的元素,但您希望避免它。

【讨论】:

    猜你喜欢
    • 2012-02-23
    • 1970-01-01
    • 1970-01-01
    • 2018-06-21
    • 2020-03-16
    • 1970-01-01
    • 1970-01-01
    • 2021-05-13
    • 1970-01-01
    相关资源
    最近更新 更多