Angularjs:显示为垃圾字符的拉丁/西班牙语字符

时间:2015-04-29 07:43:50

标签: angularjs character-encoding

JS:

$scope.test = 'Amidación';

HTML:

<span ng-bind-html="test"></span>    

输出:

Amidaci�n   

问题:我在输出中得到拉丁字符ó作为垃圾字符,我也试过ngsanitize但它没有解决。知道如何正确呈现它吗?

注意:无法将拉丁字符转换为ascii或十六进制,因为它是Json数据。

1 个答案:

答案 0 :(得分:0)

基本上您需要使用 $scope.removeRow = function(detail, index){ var delRes = $http.delete($scope.appUrl + detail.id); delRes.success(function (data, status, headers, configs) { console.log(data); //Rebind the scope value $scope.appDetails=data;// like call the grid load function }); delRes.error(function (data, status, headers, configs) { console.log(data); }); }; 清理文本,因为您需要使用$sce方法将该HTML设为受信任。

<强>代码

$sce.trustAsHtml

Working Plunkr

<强>更新

更好的方法是,您可以创建自己的过滤器,可以充当可重用的组件

<强>标记

angular.module('app', [])
  .controller('MainController', ["$scope", "$http", '$sce',
    function($scope, $http, $sce) {
      $scope.test = $sce.trustAsHtml('Amidación');
    }
  ]);

过滤

<span ng-bind-html="test | unsafe"></span>