Angularjs - 将<br/>转换成纯文本

时间:2014-10-10 02:26:29

标签: javascript angularjs

我的文字无法转换为包含<br/> html标记的纯文本。

我想要像这样

Hi

I'm Nurdin !!

Hi <br/> <br/> I'm Nurdin!!

HTML

<textarea name="" cols="" rows="" class="form-control" ng-model="rule.message" ></textarea>

JS

xxxxxControllers.controller('MemberRuleUpdateCtrl', ['$scope', '$routeParams',
    '$location', '$http',
    function($scope, $routeParams, $location, $http) {
        $scope.rule = {};
        $http({
            method: 'GET',
            url: 'http://xxxxx.my/api/get_rule_details.php?ruleId=' + $routeParams.ruleId
        }).
        success(function(data, status, headers, config) {
            $scope.rule = {
                message: data.rule[0].message
            };
        }).
        error(function(data, status, headers, config) {
            alert("No internet connection.");
        });
    }
]);

请指教。谢谢。

1 个答案:

答案 0 :(得分:3)

提供HTML格式保存到db / datasource中,显示如下

<div ng-bind-html="rule.message" >将遵循格式。

您还需要在项目中包含角度清理模块。

修改

在读完你的问题之后,我再次认为我误解了它,所以这里有更详细的答案。

  1. 如果您想了解如何在div中正确显示HTML编码字符串,请查看此插件http://plnkr.co/edit/cPSfL8Y0WWpTVxWo4OyR?p=preview

  2. 如果你想在textarea中显示HTML编码的字符串,同时保持格式化 - 这是不可能的 - 据我所知,textarea并不处理HTML。

  3. 如果您仍然想要在带有格式的“#textarea”中显示HTML编码的字符串,则需要使用类似http://textangular.com/的内容 - 它会替换您的textarea一个看起来和行为像textarea的div因此它能够显示正确的HTML格式