7

像这样将输入值绑定到 ng-model 时:

<input type="text" ng-model="array">

如何将输入文本绑定为数组?因此,如果我输入one, two, three,生成的模型将是[ "one","two","three ].

现在这就是我实现这一目标的方式:

<input type="text" ng-model="string" ng-change="convertToArray()">

在我的控制器中:

$scope.convertToArray = function(){
    $scope.array = $scope.string.split(',');
}

它工作正常,但我认为这不是最佳做法,因为我正在创建一个$scope.string变量,然后对目标数组进行硬编码。

是否可以将输入的模型设置为数组,然后让输入在绑定到范围之前通过函数?

4

2 回答 2

20

ngList将完全按照您的意愿行事。

将逗号分隔的字符串转换为字符串数组的文本输入。

于 2013-01-09T15:56:23.770 回答
0

不可以。由于您的输入将是来自用户的字符串,因此您需要手动将其转换为数组或任何其他格式。

类似的讨论和其他方法在这里讨论。可能这可能会有所帮助。(请参阅此处接受的答案)

如何在 AngularJS 的 ng-options 中设置 value 属性?

于 2013-01-09T11:07:48.403 回答