角度[innerHTML]与document.getElementById()。innerHTML

超现实

我有生成随机符号svg的代码,但是当我尝试绑定该svg[innerHTML]却没有结果时,但是当我绑定document.getElementById().innerHTMLSVG时,显示正常

holder : any
createSymbolIcon(): any {
    //placeholder until get full list of icons
    let symbolsSIDC = ['G*C*FS TP --*****', 'SUP*------*****', 'SNP*------*****']
    var renderedContent = "";
    for (var i = 1; i <= 10; i++) {
      var sidc = symbolsSIDC[Math.floor(symbolsSIDC.length * Math.random())];
      renderedContent = new ms.Symbol(sidc, { size: 30, infoFields: false }).asSVG();
       if(angularBind){
         this.holder = renderedContent
       } else {
         document.getElementById("symbols" + i).innerHTML = renderedContent;
       }
    }   
  }
}

忽略循环,而holder var只保留最后一个元素,这是HTML中的绑定外观

<div id="symbols1" [innerHTML]='holder'></div>

最后,renderedContent输出类似于

"<svg xmlns="http://www.w3.org/2000/svg" version="1.2" baseProfile="tiny" width="35.4" height="38.4" viewBox="41 26 118 128"><path d="M 45,150 L 45,30,155,30,155,150" stroke-width="4" stroke="black" fill="rgb(170,255,170)" fill-opacity="1" ></path><path d="M45,50 l0,-20 110,0 0,20 z" stroke-width="4" stroke="none" fill="black" ></path></svg>"

知道是什么导致此svg标记与[innerHTML]值绑定时无法呈现吗?我宁愿不使用document.getID

谢谢!

费萨尔

您正在犯一个简单的错误:您必须在holder内部加上双引号(“”)。

<div id="symbols1" [innerHTML]="holder"></div>

这也应该imo工作:

<div id="symbols1" innerHTML="{{holder}}"></div>

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

document.getElementById('msg').innerHTML 获取角度 13 的错误

ajax-Ajax与document.getElementById()。innerHTML

不能 document.getElementById("page").innerHTML

JavaScript 中的代码含义“document.getElementById('msg').innerHTML

将链接放在document.getElementById('')。innerHTML =之后

使用 var 用 document.getElementById 替换 <p></p> innerHTML

将document.write转换为getElementById / innerHTML

document.getElementById.innerHTML无法用于ejs-javascript

给TypeError:'undefined'的document.getElementByID(“ test”)。innerHTML不是函数(评估'document.getElementByID(“ test”)')

从innerHTML列表内的按钮获取getElementById

带有if else条件的getElementById.innerHTML

JavaScript 和 HTML 赋值 .getElementById 和 .innerHTML

为什么在for循环中使用document.getElementById('')。innerHTML和document.write()的结果不同?

文本在输出中垂直上下跳动。使用“ document.getElementById(” firstDiv“)。innerHTML = document.getElementById(” location“)。value;”

$(“#item”)。val();之间的函数区别是什么?和document.getElementById(“ item”)。innerHTML ;?

由于某种原因,document.getElementById()。innerHTML无法正常工作吗?

使用document.getElementById替换innerHTML时发生意外行为

document.getElementById(“ id”)。innerHTML不起作用,但console.log起作用。为什么?

通过 document.getElementById(idPopUPImage).innerHTML 在传单中为设置值创建弹出静态?

document.getElementById(“ elementId”)。innerHTML =()的倍数,导致第二个返回为null

document.getElementById(“ someId”)。innerHTML =`$ {someVar}`是否设置了可供屏幕阅读器访问的值?

document.GetElementById(“ main”)。innerHTML =“正在测试”正在还原,不会永久更改

document.getElementById(“ foo”)。innerHTML确实打印HTML,但不可见

如何从标签获取值并将其放入document.getElementById('label')。innerHTML

使用document.getElementById(“ id”)。innerHTML时如何更改文本的颜色

我在哪里放置“ document.getElementById(“))。innerHTML =”“;” 在我的Javascript中?

为什么 document.getElementById(divName).innerHTML 没有得到 canvas 元素?

缺少数字 - document.getElementById("countdown-timer").innerHTML 内的 CSS

如何使用 document.getElementById("abc").innerHTML DOM 以字符串格式显示 JavaScript 对象的内容?