HTML Entities with Knockout

2019-01-26 05:43发布

问题:

How can I output HTML Entities in fields that are bound to a variable in the viewModel? I would like to display an HTML Entity like ← (←) in a field bound to a span in the HTML. Unfortunately, the HTML is escaped, so the browser displays ← instead of the symbol.

Fiddle with an example: 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>

回答1:

You can use the html binding for something like this one. It would look like:

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

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