javascript 如何使用angularJS拆分字符串

qxsslcnc  于 2023-02-02  发布在  Java
关注(0)|答案(5)|浏览(141)

我想知道我是否能用angularJS简单地拆分一个字符串。

$scope.test = "test1,test2";

在我的控制器和我的观点中,我想做类似的事情

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

我见过很多关于input和ng-change调用控制器中的函数,用ng-list拆分字符串或其他东西,但在我的情况下没有任何效果。
谢谢所有人。

dfuffjeb

dfuffjeb1#

您可能希望将该功能 Package 到一个过滤器中,这样您就不必将mySplit函数放在所有控制器中。

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];
        }
    });

在这里,您可以按照最初的意图使用过滤器

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

更多信息请访问http://docs.angularjs.org/guide/filter(谢谢ross)
活塞@http://plnkr.co/edit/NA4UeL

4ngedf3f

4ngedf3f2#

Thx的家伙,我终于找到了解决方案,一个真正基本的。。在我的控制器我有

$scope.mySplit = function(string, nb) {
    var array = string.split(',');
    return array[nb];
}

在我看来

{{mySplit(string,0)}}
suzh9iv8

suzh9iv83#

你可以试试这样的方法:

$scope.test = "test1,test2";
{{test.split(',')[0]}}

现在,当您尝试{{test.split(',')[0]}}时,将获得"test1"
并且在尝试{{test.split(',')[1]}}时将获得"test2"
这里是我的plnkr:
http://plnkr.co/edit/jaXOrZX9UO9kmdRMImdN?p=preview

iyfamqjs

iyfamqjs4#

你可以试试这个:

$scope.testdata = [{ 'name': 'name,id' }, {'name':'someName,someId'}]
$scope.array= [];
angular.forEach($scope.testdata, function (value, key) {
    $scope.array.push({ 'name': value.name.split(',')[0], 'id': value.name.split(',')[1] });
});
console.log($scope.array)

这样你就可以保存数据供以后使用,并使用ng-repeat来访问它,如下所示:

<div ng-repeat="item in array">{{item.name}}{{item.id}}</div>

我希望这能帮到什么人,
柱塞连杆:here
所有的功劳都归@jwpfox和@Mohideen ibn Mohammed所有。

0tdrvxhp

0tdrvxhp5#

最简单的一个AngularJS
{{测试拆分('T')[0]}}

相关问题