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.
You need to use split() function.
The split() method splits a string into an array of substrings. The split() method returns the new array. The split() method does not change the original string. If (" ") is used as separator, the string is split between words.
The split() method in javascript accepts two parameters: a separator and a limit. The separator specifies the character to use for splitting the string. If you don't specify a separator, the entire string is returned, non-separated.
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
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With