KeizerBridge KeizerBridge - 2 months ago 16
AngularJS Question

How to split a string with angularJS

I wanted to know if I can split a string simply in angularJS.
I have my

$scope.test = "test1,test2";


in my controller and in my view,
I wanted to do something like that

{{test[0] | split(',')}}
{{test[1] | split(',')}}


I've seen a lot thing about input and ng-change calling a function in the controller that split the string or something with ng-list but nothing works in my case.

thx to all.

Answer

You may want to wrap that functionality up into a filter, this way you don't have to put the mySplit function in all of your controllers. For example

angular.module('myModule', [])
    .filter('split', function() {
        return function(input, splitChar, splitIndex) {
            // do some bounds checking here to ensure it has that index
            return input.split(splitChar)[splitIndex];
        }
    });

From here, you can use a filter as you originally intended

{{test | split:',':0}}
{{test | split:',':0}}

More info at http://docs.angularjs.org/guide/filter (thanks ross)

Plunkr @ http://plnkr.co/edit/NA4UeL

Comments