2016-08-02 10 views
3

Ich habe eine Funktion, um das Dokument auszuwählen und die Datei diesen Dokumenttyp hinzuzufügen. Iam kann diese Werte nicht an die Steuerung senden.Wie die Formularwerte mit Array zu Winkel-Controller übergeben werden

Eigentlich benutze ich neue Funktionen zum Formular hinzufügen. Also nenne ich es als Array und versuche, die Details zu senden. Aber ich verstehe die Details hier nicht.

FYI ich benutze codeigniter für das Server-Scripting.

Kann mir jemand helfen.

Hier ist meine Ansicht Datei checklist.php.

<div ng-controller="checklist"> 

<div class="row"> 
<div class="col-xs-12"> 
<!-- PAGE CONTENT BEGINS --> 
<form class="form-horizontal" role="form" name="checkForm" action="#/customer/adddocument" novalidate> 


<a id="button" onlick="duplicate()">Click me</a> 

<div id="duplicater"> 
<div class="row"> 
<div class="form-group col-md-6" ng-controller="documentController" > 
<label class="col-sm-3 control-label no-padding-right">Documents</label> 
<div class="col-sm-9"> 
<select class="form-control" name="document[]" required ng-model = "checklist.document[]"> 
<option value="">Select document</option> 
<option ng-repeat="option in documentsList.data" value="{{option.AGENT_ID}}">{{option.AGENT_NAME}}</option> 
</select> 
</div> 
</div> 

<div class="col-md-6"> 
<input type="file" name="file" /> 
</div> 

</div> 
</div> 

<script> 
document.getElementById('button').onclick = duplicate; 
var i = 0; 
var original = document.getElementById('duplicater'); 

function duplicate() { 
var clone = original.cloneNode(true); // "deep" clone 
// clone.id = "duplicetor" + ++i; // there can only be one element with an ID 
original.parentNode.appendChild(clone); 
} 
</script> 


<div class="modal-footer" > 
<button ng-show="sub" ng-click="submit(checklist)" ng-disabled="checkForm.$invalid" class="btn btn-sm btn-primary"> 
<i class="ace-icon fa fa-check"></i> 
Save 
</button> 

<button ng-show="edt" ng-click="update(checklist)" ng-disabled="checkForm.$invalid" class="btn btn-sm btn-primary"> 
<i class="ace-icon fa fa-check"></i> 
Edit 
</button> 
<button ng-show="edt" ng-click="cancel()" class="btn btn-sm btn-primary"> 
<i class="ace-icon fa fa-check"></i> 
Cancel 
</button> 
</div> 


<input type="submit" name="submit"> 


</form> 

Und hier ist mein Controller Datei checklist.js.

project.controller('checklist', ['$scope', '$http', 'services', '$location', 'uiGridConstants', '$timeout','$interval','$q','$rootScope','$filter', function($scope, $http, services, $location, uiGridConstants, $timeout,$interval,$q,$rootScope,$filter,uibDateParser) { 


$rootScope.$broadcast("globalgrid",{'displaycolumns': discolumns, 'gridservice':gridservice , 'grid_service_param':grid_service_param });//,'gridload':func_name, 'addnew': "Submit" 
//$scope.selectedDate = Date(); 
$scope.sub = true; 
$scope.edt = false; 
$scope.uploadfiles = ""; 
console.log($scope.date); 

$scope.custsub = function(e){ 
var fd = new FormData(); 
    fd.append('file', $scope.uploadfiles); 
     var f = $scope.uploadfiles; 
     console.log(f); 
     console.log(e); 
     services.addCustomerinfo(res.data,e.icno,e.customername); 
     $rootScope.submit(submitfun); 
    }); 

} 

in der Steuerung, wenn ich mit Konsole überprüfen ich nichts bekommen werde. kann mir jemand helfen.

+0

Dank @Karthik .. Für die optimale Lösung – chaitanya

Antwort

0

1.) Sie benötigen einen Rest api zu schaffen, die Ihre gebuchten Daten aus Form zurückkehrt,
2.) einen Winkeldienst schaffen, die eine Anforderung von diesem api macht,
3.) umfasst, das den Dienst in Ihrem Controller und senden abgerufene Daten zur Ansicht.