【问题标题】:How to append an html element from a string?如何从字符串中附加一个 html 元素?
【发布时间】:2021-12-20 07:44:57
【问题描述】:

嗨,

我有这样的代码,首先是我的固定 html 容器:

 <div id="messages"></div>

然后是生成其内容的javascript:

 var post = `<div id="${userid}">${content}</div>`;
 var item = document.createElement('div');
 item.innerHTML = post;
 messages.appendChild(item);

问题在于它将每个帖子包装在我不需要的 div 中。这应该是输出

<div id="messages">
 <div id="user45">some content</div>
 <div id="user46">more content</div>
</div>

如何在没有包装器的情况下将字符串的内容直接附加到容器中?

谢谢。

【问题讨论】:

  • 你的代码显式创建了你不想要的额外&lt;div&gt;;也许你不应该那样做。
  • 你把帖子包装在一个 div 中?
  • 这是您的完整代码吗?我认为您每次都在使用循环并附加该项目
  • 我这样做是因为我不知道其他方式,但下面的人已经给了我答案,现在我知道了。

标签: javascript innerhtml


【解决方案1】:

你可以使用insertAdjacentHTML:

messages.insertAdjacentHTML('beforeend', post)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-01-28
    • 1970-01-01
    • 1970-01-01
    • 2022-07-21
    • 2014-08-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多