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 に答える