使用ng-show替换字符串中的字符

时间:2017-09-08 18:09:05

标签: angularjs

问题:我希望能够取代&放大器;与&通过使用ng-show。

所以我有一个角度表达式“e.Example”,其中包含以下字符串{Camp& Stuff,Stuff $ Camp}。当我在表单中生成字符串时,它代表“&”作为“& amp;”等等。

我想做点什么:

<span ng-show="e.Example ==='$' replace it with someting else"></span>

如何使用ng-show实现这一目标?我知道在C#中我可以使用.Contains和.Replace。我想知道它们在angularjs中是否类似

@Lansana

我尝试了以下内容:

<span ng-show="e.Specialty === '&amp;' && doSomethingTo(e.Specialty)"></span>

但是,当我查看调试器时,它会显示&amp; char而不是'&amp;放大器;”其中'&amp;'单击sumbit并显示结果时出现

更新:尝试以下操作:

    <span ng-show="doSomethingTo()"></span>

       function doSomethingTo(val){
           val.property = '&';
           return true;
       }

2 个答案:

答案 0 :(得分:0)

使用双和号比较运算符。如果第一个语句为真,则第二个语句将被执行。

像这样:

1    
America    
AA    
Bangkok    
Canada

答案 1 :(得分:0)

请点击此处查看此片段。

使用ng-bind-html $sce.trustAsHtml功能时,请查看您是否做错了。

(function() {

  angular
    .module('app', [])
    .controller('TestController', function($sce, $scope) {
      // Inject $sce service and call trust as html function
      $scope.test = $sce.trustAsHtml("Camp &amp; Stuff, Stuff $ Camp");
      
    });

})();
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.5.8/angular.min.js"></script>
    <title>Test</title>
</head>
<body ng-app="app">

<div ng-controller="TestController as ctrl">
  
  <!-- Add ng-bind-html with the variable that contains the ampersand problem -->
  <span ng-bind-html="test"></span>

</div>

</body>
</html>