angularjs app在ui-select字段中的占位符文本中不显示特殊字符

时间:2016-12-31 17:59:59

标签: angularjs angular-translate ui-select angular-ui-select

我有一个多语言角度应用程序,其中一种语言有特殊字符,例如变音符号。它们在标签,标题,标题上显示正常,但不在占位符文本中显示。 这是我的代码:

<label translate="app.title"></label>
<ui-select name="myoption" ng-model="app.option" theme="selectize">
    <ui-select-match placeholder="{{ 'app.placeholder' | translate }}">
        {{$select.selected.value}}
    </ui-select-match>
    <ui-select-choices repeat="o.key as o in tras.app.options | filter: $select.search">
        <div ng-bind-html="o.value | highlight: $select.search"></div>
    </ui-select-choices>
</ui-select>

标签标题有一个特殊的字符,如äö,它们显示正常。但是同样的单词也出现在占位符文本中,但它显示为&#228。 它为什么会这样?有人可以帮忙解决它吗?

2 个答案:

答案 0 :(得分:3)

此问题已在此处讨论https://github.com/angular-translate/angular-translate/issues/1282

你需要关闭消毒:

$translateProvider.useSanitizeValueStrategy(null);

答案 1 :(得分:1)

使用ng-bind-html标记,如下所示:

<ui-select-match placeholder="{{ 'app.placeholder' | translate }}" 
                 ng-bind-html="selected.selected.value">
</ui-select-match>

但是对于占位符,您必须使用上面的AHC解决方案。