innerHTML 正在改变输入的值

innerHTML is changing the value entered

在我正在开发的应用程序中,我发现通过将新值重写为 innerHTML 来更新 DOM 并没有给出预期的结果。

我在 DevTools 控制台中输入了以下命令:

document.querySelector('main-app').shadowRoot.querySelector('.unitslist').innerHTML = '<unit-bar>1</unti-bar><unit-bar>2</unti-bar>'

结果如下:

<unit-bar>1<unit-bar>2</unit-bar></unit-bar>

所以,你可以解决避免覆盖:- 1. 获取 div 的内容并添加要更新的当前值和现有值

DOMElem.innerHTML = DOMElem.value +(要更新的值)

您的字符串中有错字。您以 <unit-bar> 打开,但以 </unti-bar> 结束。因此,结束标记可能会被浏览器忽略,它会猜测它们应该在哪里,从而导致您看到的不同。