在AngularJS中大写头衔

时间:2015-07-14 05:59:13

标签: angularjs

我正试图将标题大写,但似乎并没有起作用。我设法使用css“大写”获得其他单词,但无法让我的头脑使其与AngularJS标题一起使用。

这是angularJS代码:

    <title ng-bind="title"></title>

这是html输出:

    <title ng-bind="title" class="ng-binding">james byrne</title>

我想把J和B都大写。

5 个答案:

答案 0 :(得分:2)

您可以通过创建capitalize过滤器创建,然后使用ng-bind以及要过滤的文字来解决此问题。

<强> Demo Code

<强> Demo Page

<强> HTML

<title ng-bind="title | capitalize"></title>

<强> JAVASCRIPT

  .run(function($rootScope) {
    $rootScope.title = 'james byrne';
  })

  .filter('capitalize', function() {
    return function(string) {
      return string.split(' ').map(function(string) {
        string = string.trim();
        return string.charAt(0).toUpperCase() + string.substr(1).toLowerCase();
      }).join(' ');
    };
  });

答案 1 :(得分:1)

我希望它有所帮助:)

 <title ng-bind="title" class="ng-binding" style="text-transform:capitalize">james byrne</title>

<span data-ng-bind="caps" style="text-transform:capitalize">james bond</span>
        <input type="text" data-ng-model="caps"/>

enter image description here

答案 2 :(得分:1)

在过滤器中编写您自己的自定义过滤器,您可以使用正则表达式将每个字母大写为:

var tempArray = $scope.title.match(/ [a-z]/);
for(i = 0, i<tempArray.length, i++)
  {
    tempArray[i] = tempArray[i].slice(1);
    $scope.title.replace(/ [a-z]/, tempArray[i].toUpperCase());
  }

答案 3 :(得分:1)

您可以使用自定义过滤器

cacheDirectory

答案 4 :(得分:0)

您可以使用简单的javaScript来执行此操作。

document.title = document.title.toUpperCase();