1

textarea モデルをオブジェクトの特定の配列にバインドする簡単な (またはそう簡単ではない) 方法はありますか?

テキストエリア

ここに画像の説明を入力

今では、ng-list ディレクティブの特定のシンボルを使用して、単純な配列にバインドできます。

<textarea ng-trim="false" ng-list="&#10;"></textarea>

これにより、次のような配列が得られます。

["value1;value2;value3;", "value1;value2;value3;", "value1;value2;value3;"]

ただし、これを達成したい:

[{field1: "value1", field2: "value2", field3: "value3"}, {field1: "value1", field2: "value2", field3: "value3"}]
4

1 に答える 1

0

次のような関数を作成できます。

$scope.createObject = function(){
  $scope.newAr = []

  for(var i = 0; i < $scope.data.length; i++){
    var str = $scope.data[i]

    var splitStr = str.split(";");
    var obj = {};

    for(var j = 0; j < splitStr.length; j++){
      obj['field'+(j+1)] = splitStr[j];
    }
    $scope.newAr.push(obj)
  }
}

次に、次のように ng-change で呼び出します。

<textarea ng-change="createObject()" ng-model="data" ng-trim="false" ng-list="&#10;"></textarea>

ここに働くプランカーがあります。

于 2016-01-23T13:53:31.067 に答える