2017-06-17 57 views
1

HTML部分存储数据到在FORMDATA

<div ng-repeat="tag in tags"> 
     <input type="text" ng-model="user.tags" /> 
    </div> 

角部通过

$scope.tags = [] 
    $scope.addTag = function() { 
     $scope.tags.push({ 
    }) 
} 
var info = new FormData(); 
info.append("tags", $scope.tags); 

,所以我想从所有标签将数据存储在标签中的单个阵列。 我需要@HassanImam通过该数组元素FORMDATA信息

+1

你为什么要重复 – Sajeetharan

+0

来显示数组的每个索引的输入 –

回答

1

提高对答案

var app = angular.module("app", []); 
 

 
app.controller("myCtrl", function($scope) { 
 
    $scope.tags = []; 
 
     
 
    $scope.hisFunction = function() { 
 
     if($scope.x){ 
 
     $scope.tags.push($scope.x); 
 
     $scope.x = ""; 
 
     } 
 
    } 
 

 
    $scope.myFunction = function() { 
 
     $scope.tagss="[\""; 
 
     var i=0; 
 
     for(i=0;i<$scope.tags.length;i++){ 
 
     $scope.tagss=$scope.tagss+$scope.tags[i]; 
 
     if(i<$scope.tags.length-1) 
 
     $scope.tagss=$scope.tagss+"\",\""; 
 
     } 
 
     $scope.tagss=$scope.tagss+"\"]"; 
 

 
     var info = new FormData(); 
 
     info.append("tags", $scope.tagss); 
 
     for (var pair of info.entries()) { 
 
     console.log(pair[0]+ ', ' + pair[1]); 
 
     } 
 
    } 
 

 
});
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> 
 
<div ng-app='app' ng-controller="myCtrl"> 
 
    <div ng-repeat="tag in tags track by $index"> 
 
     <input type="text" ng-model="tag" /> 
 
    </div> 
 
     <input type="text" ng-model="x" /> 
 
     <button ng-click="hisFunction()">Add</button> 
 
     <button ng-click="myFunction()">Submut</button> 
 
</div>

我知道这是不是一个适当的解决方案,但嘿它的作品。
我希望它有帮助。

+1

感谢他的工作。 –

+1

很高兴我能帮上忙。 –

3

var app = angular.module("app", []); 
 

 
app.controller("myCtrl", function($scope) { 
 
    $scope.tags = []; 
 
     
 
    $scope.myFunction = function() { 
 
     if($scope.x){ 
 
     $scope.tags.push($scope.x); 
 
     $scope.x = ""; 
 
     } 
 
    } 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> 
 
<div ng-app='app' ng-controller="myCtrl"> 
 
    <div ng-repeat="tag in tags track by $index"> 
 
     <input type="text" ng-model="tag" /> 
 
    </div> 
 
     <input type="text" ng-model="x" /> 
 
     <button ng-click="myFunction()">Click Me!</button> 
 
</div>

+0

我试过你的代码,它将变量存储在数组中,但是当我将它传递给formData时,它不再是数组 –

+0

请参阅[this] (https://stackoverflow.com/questions/16104078/appending-array-to-formdata-and-send-via-ajax)为您的第二部分。 –