Angularjs-转换<br/>转换为纯文本

Angularjs - Convert <br/> into plain text

本文关键字:转换 文本 gt br lt Angularjs-      更新时间:2023-09-26

我的文本不会转换为包含<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.");
        });
    }
]);

如果HTML格式被保存到数据库/数据源中,则显示如下

<div ng-bind-html="rule.message" >将服从格式化。

您还需要在您的项目中包含angular cleanise模块。

编辑

看完你的问题后,我觉得我有点误解了,所以这里有一个更详细的答案。

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

  2. 如果您想在保持格式的同时在textarea中显示HTML编码的字符串(这是不可能的),那么据我所知,文本区域不处理HTML。

  3. 如果您仍然希望在"文本区域"中显示HTML编码的字符串并进行格式化,则需要使用以下内容http://textangular.com/-它将您的文本区域替换为一个div,该div的外观和行为与文本区域类似,因此它能够显示正确的HTML格式