2012-06-27 12 views
14

¿Cómo puedo generar entidades HTML en campos que están vinculados a una variable en viewModel? Me gustaría mostrar una entidad HTML como ← (←) en un campo vinculado a span en el HTML. Lamentablemente, se escapó el código HTML, por lo que el navegador muestra & larr; en lugar del símboloEntidades HTML con Knockout

violín con un ejemplo: http://jsfiddle.net/nwinkler/KES2j/

JavaScript:

var data = { value : '←'}; 

var viewModel = { 
    field: ko.mapping.fromJS(data) 
}; 

ko.applyBindings(viewModel); 

HTML:

<p>HTML: &larr;</p> 
<p>Knockout: <span data-bind='text: field.value'></span></p> 

Respuesta

23

Usted puede utilizar el html vinculante para algo como esto. Que se vería así:

<p>Knockout: <span data-bind='html: field.value'></span></p> 

muestra: http://jsfiddle.net/rniemeyer/KES2j/1/

+0

Es importante darse cuenta de que si se cambia de texto: a html: que potencialmente crea un problema de seguridad. Debe asegurarse de que los usuarios de su aplicación no puedan manipular el valor de field.value. De lo contrario, puede abrirse a un ataque CSRF. –

+0

¿Cómo puedo vincular html con el enlace de opciones? – adriaanp

Cuestiones relacionadas