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 回答