如何限制html标签属性验证?

问题描述 投票:0回答:1

你好,我创建了一个html元素,如下图所示。

var element = document.createElement('div');
element.innerHTML = `<img src="fail" onerror="alert();" />`;
element.setAttribute('id', 'check');
document.body.append(element);

// removed element from DOM
 element.parentNode.removeChild(element);

当你运行这段代码时,你会看到如下的控制台错误。

GET https:/stacksnippets.netfail。 404(未找到)

有什么建议可以解决这个控制台错误吗?

javascript html appendchild removechild
1个回答
0
投票

我试了下面的方法解决了我的pblm问题

 private static removeElement(): void {
         // Removes an element's attibute to avoid html tag validation
         let nodes: HTMLCollection = this.wrapElement.children;
         for (let j: number = 0; j < nodes.length; j++) {
             let attribute: NamedNodeMap = nodes[j].attributes;
             for (let i: number = 0; i < attribute.length; i++) {
                 this.wrapElement.children[j].removeAttribute(attribute[i].localName);
             }
         }
    }
© www.soinside.com 2019 - 2024. All rights reserved.