結合文本和HTML這是我要如何構建我的HTML淘汰賽
<a href="#">John <i class="person"></i></a>
而且隨着knockout.js這就是我所做的。
<a data-bind="text:name"><i class="person"></i></a>
正如您可以猜到所有元素錨(不只是文本)被becuse文本在這種情況下錨的內整個標籤被移除結合的去除。我的解決方案在下面。
<a data-bind="html: name() + '<i class="person"></i>'"></a>
在數據綁定中使用字符串連接與html是一種解決方案,但它有兩大缺點。 'name'propery不安全,所以我們可以得到html注入。在數據綁定屬性中很好地寫html是很糟糕的。
另一個解決方案是。
<a href="#"><span data-bind="text:name"></span><i class="person"></i></a>
我知道我們介紹新的html標記的解決方案。這是我發現最好的。
在knockout.js中針對此問題的衆所周知的解決方案是什麼?
我們可以指定只更新文本而不是將其中的整個元素更新爲通過參數進行文本綁定?
還是更好的解決方案?
這是正確的解決方案。當我使用額外跨度時,我使用的當前主題的行爲有所不同。非常感謝你 – Freshblood