2016-05-25 10 views
1

Ich brauche nicht in der Lage, auf die $ scope.mainform.submitsed Eigenschaft in meinem Skript zugreifen. Mein HTML geht wie folgt.Wie aktuelles Formular in ng-repeat angularjs

<div ng-form="mainform"> 
 
    <div ng-repeat="dependent in DependentDetails"> 
 
     <ng-form name="subform"> 
 
      <input type="text" class="textbox" ng-model="dependent.FirstName"/> 
 
        
 
      @*Same goes for other personal details*@ 
 
        
 
      <input type="button" id="submitbutton" value="Save" ng-model="Submit" ng-click="saveDependentDetailsClick($event, $index, dependent)" /> 
 
     </ng-form> 
 
    </div> 
 
</div>

Kann jemand helfen?

Antwort

0

versuchen Sie dies.

var app = angular 
 
    .module('MyApp', [ 
 
    ]) 
 
.controller('Main', ['$scope', function ($scope) { 
 
    $scope.DependentDetails = [{"FirstName":""},{"FirstName":""}]; 
 
    
 
    $scope.saveDependentDetailsClick = function(DependentDetails){ 
 
    
 
    console.log(DependentDetails); 
 
    } 
 
}])
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> 
 
<div class="main-content" ng-app="MyApp" ng-controller="Main as myCtrl"> 
 
    <div ng-form="mainform"> 
 
     <div ng-repeat="dependent in DependentDetails"> 
 
      <ng-form name="subform"> 
 
        <input type="text" class="textbox" ng-model="dependent.FirstName"/> 
 
       <input type="button" value="Save" ng-click="saveDependentDetailsClick(dependent)" /> 
 
      </ng-form> 
 
     </div> 
 
      
 
    </div> 
 
</div>

+0

Aber ich muss Submit-Button am Ende jeder abhängigen Details anzeigen und wenn der Benutzer auf die "Speichern" klickt, muss ich auf die übermittelte Eigenschaft dieses bestimmten Formulars zugreifen. Wenn ich debugge, zeigt es andere Eigenschaften wie gültig, ursprünglich usw. aber "submitted" ist sichtbar. – user3754877

+0

siehe aktualisierte Antwort. –

1

Zunächst einmal denke ich, dass es nicht richtig ist <ng-form name="subform">...</div> in ng-repeat in einer Art und Weise Sie es verwendet haben, zu verwenden, da Sie mit mehreren Formularen mit demselben Namen wird am Ende (subform) innerhalb Im selben Umfang können Sie daher nicht auf jede dieser Formen verweisen, da sie keinen eindeutigen Namen haben, der Ihnen einen Verweis darauf bietet. Sie werden auch mit mehreren Senden Schaltflächen mit der gleichen id="submitbutton" im selben HTML-Dokument am Ende, die eine ungültige HTML ist.