angularjs:将制表符分隔文本复制并粘贴到textarea然后转换为表格

时间:2016-05-12 21:23:48

标签: javascript angularjs

我有一个应用程序,用户可以在其中复制和粘贴制表符分隔文本。我想把文本放到一个表格中(每个新列都是一个标签,每个新行都是粘贴文本中的新行。

我有以下内容为粘贴文本中的每个新行构建一个列表,但是如何从制表符分隔文本中获取数组?

 <div ng-app>

   <textarea ng-model="items" ng-list="/\n/"></textarea>
   <table>
     <tbody>
       <tr ng-repeat="item in items">
         <td>
           {{item}}
         </td>
       </tr>
     </tbody>
   </table>

</div>

由于我无法在没有重新格式化的情况下粘贴制表符分隔文本...要从记事本或电子表格中进行制表符分隔文本复制和粘贴。

1 个答案:

答案 0 :(得分:2)

这对你有用吗? http://jsbin.com/bosamuhoti/1/edit

这是一个片段:

Angular app

angular.module('myapp', [])
.controller('myCtrl', ['$scope', function($scope){
    $scope.items = [];
    $scope.table  = []; 

  $scope.$watch("items", (newValue, oldValue) => {

    for (var item of newValue) {
        $scope.table.push(item.split('\t'));
      }

  });
}]);

和相应的HTML

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

   <table border="1">
     <tbody>

       <tr ng-repeat="item in table track by $index">
         <td ng-repeat="data in item track by $index">
           {{data}}
         </td>
       </tr>
     </tbody>
   </table>