如何在 HTML 元素的 innerHtml 中执行脚本。我有一个包含脚本元素的 HTML 字符串,如下面的 HTML 示例。
<strong>asdasd</strong><br>
<p>asdasd</p>
<script>alert('aa')</script>
我尝试将此 HTML 注入到我的组件中,并在组件模板中使用以下 HTML 代码。
<div [innerHTML]="customScript"></div>
我的问题是 HTML 字符串中的脚本无法运行。如何让div元素innerHTML中嵌入的script元素的内容执行?
在第二个代码片段中,
customScript
变量没有在任何地方进行硬编码。它是来自后端的字符串。它可以包含任何标签,如 html、body、div、script(是的!需要允许脚本!)。我需要使 customScript
HTML 字符串中的任何脚本作为正常的 html/脚本代码在我的组件中运行。
您可以使用正则表达式获取
<script/>
的所有内容,然后使用eval()
运行它。