有人知道KnockoutJS是否在其观察中解析<
和>
?我正在返回一个字符串,如...
<a href="#">google.com</a>
...但它呈现为......
<a href="www.google.com" target="_blank" style="color: #0065CB">www.google.com</a>
...所以网址没有正确呈现。以下是模板,问题标记为${ text }
:
<script type="text/html" id="chatRoom">
<div id="chatContainer" class="chatContainer">
<div class="chatFrom">
oaSES Sales
<i id="chatClose" class="chatSprite chatClose" data-bind='click: function() { server.removeChat(this) }'></i>
</div>
<div class="chatMessages">
<ul id="chatHolder">
{{each messages()}}
<li><div class="chatFromText">From: ${ from }</div>
<div class="chatTime">${ time }</div><div class="chatMsg">${ text }</div></li>
{{/each}}
</ul>
</div>
<div class="chatControls">
<form data-bind="submit: function() { send($('#'+channel).val()); $('#'+channel).focus(); }">
<input type="text" id="${ channel }" name="message" class="chatText" style="color: #999;" value="Message Here" data-bind='click: function() {
$("#"+channel).val("").css("color", "#000");
}' />
<i class="chatSprite chatSend" data-bind="click: function() { $('.chatSend').parent().submit() }"></i>
</form>
</div>
</div>
</script>
答案 0 :(得分:1)
您需要使用{{html text}}
代替${ text }
来确保您的值不会被转义。如果您在KO中使用数据绑定属性,那么有一个“html”绑定可以用作“文本”绑定的替代。