在翻译时以角度js显示样式标记

时间:2017-09-06 11:15:55

标签: javascript html angularjs angular-translate angular-sanitizer

这是我的控制器文件,其中

$scope.htmlCompanyFromScope = '<span style=color:red>Micro</span>';
$scope.htmlTagFromScope = "MicroTag";

我的* .resx文件包含

 TranslationValue = "{{htmlCompany}} tag is {{htmlTag}}"

在我的HTML中,我定义了以下内容:

 <span translate="TranslationValue " translate-values="{htmlCompany: htmlCompanyFromScope , htmlTag: htmlTagFromScope}"></span>

但最终,风格并没有得到尊重。 显示类似

的内容

Micro标签是MicroTag

任何指针?

2 个答案:

答案 0 :(得分:2)

我假设您使用$translateProvider.useSanitizeValueStrategy('sanitize');策略进行转义,如:

angular-sanitize.js

It uses $sanitize服务,因此样式属性将get stripped by this service(要覆盖此内容,您需要更改class的源代码,但我不知道#39;建议这样做)。作为此处的解决方法 - 您需要使用$sanitize属性(因为类属性不会被class="red"去除),例如.red { color:red; },并设置正确的css样式,如vote_id = 1534 vote = record.answer_records.find_or_initialize_by(stage_answer_id: vote_id)

示例here

答案 1 :(得分:1)

使用

<span style="color:red">

<span style=color:red>