angularjs怎么过滤textarea中的特殊字符?


angularjs怎么过滤掉textarea输入内容中夹带的特殊字符?

textarea angularjs

salala 10 years, 2 months ago

自己定义一个过滤器

例如可以这样:


 html


 <body ng-app="app">
    <div ng-controller="main">
        <textarea ng-model="val" ng-change="cg()"></textarea>
        <div>
            原始值:<pre>{{val}}</pre>
            在HTML中使用过滤器显示的值:<pre>{{val | replaceCode}}</pre>
            过滤后的值:<pre>{{replacedVal}}</pre>
        </div>
    </div>
    <script type="text/javascript">
    var app = angular.module('app', []);

    app.controller('main', ['$scope', 'replaceCodeFilter', function($scope, replaceCodeFilter){
        // 注意这里 可以等到你真正的需要取值的时候再去调用就可以了
        // 这里只是为了演示 所以加了 on-change
        $scope.cg = function() {
            $scope.replacedVal = replaceCodeFilter($scope.val);
        };

    }]);

    app.filter('replaceCode', function() {
        return function(val) {
            if (!val) val = '';
            return val.replace(/[#$%^&*!]/g, '');
        }
    });
    </script>
</body>

Tamakyi answered 10 years, 2 months ago

Your Answer