javascript - How can I capture an array of objects that are generated by the user? -



javascript - How can I capture an array of objects that are generated by the user? -

i trying capture array of objects generated user. problem though array generated, objects fail retain values entered user, populating array objects have null properties.

here code. javascript:

// add together additional employment $scope.addemployment = function() { $scope.additionalemployment.push( { addemploymentstatusid: '', employmenttypeid: '', employername: '', employmentstartdate: '', employmentenddate: '', employernumber: '', employerstaddress: '', employercity: '', employerstate: '' } ); }; $scope.saveapplication = function() { // create post obj var postobj = { additionalemployment: $scope.additionalemployment }; // api post $http.post('/api/employment/jobhistory', postobj) .success(function(data) { // success code }) .error(function(data) { // error code }); };

html:

<fieldset class="formbackground3"> <legend class="formbackground3">additional employment</legend> <div ng-repeat="x in additionalemployment" class="text-center"> <h3>{{$index + 1}}</h3> <!--employment status--> <div class="form-group" style="display: inline-block;"> <i class="glyphicon glyphicon-asterisk"></i> <label for="{{'empstatid' + $index}}" class="control-label"> employment status </label> <select class="form-control" ng-model="x[$index].employmentstatusid" id="{{'empstatid' + $index}}" ng-options="x.id x.status x in statuses.employment"> <option value="">--select--</option> </select> </div> <!--employment type--> <div class="form-group" style="display: inline-block;"> <i class="glyphicon glyphicon-asterisk"></i> <label for="{{'emptypeid' + $index}}" class="control-label"> employment type </label> <select class="form-control" ng-model="x[$index].employmenttypeid" id="{{'emptypeid' + $index}}" ng-options="x.id x.type x in statuses.employmenttype"> <option value="">--select--</option> </select> </div> <!--employer--> <div class="form-group" style="display: inline-block;"> <label for="{{'emplyid' + $index}}" class="control-label"> employer name </label> <input type="text" class="form-control" ng-model="x[$index].employername" id="{{'emplyid' + $index}}" /> </div> <!--employment start date--> <div class="form-group" style="display: inline-block;"> <label for="{{'empstartid' + $index}}" class="control-label"> <i class="glyphicon glyphicon-calendar"></i> employment start date </label> <input type="text" class="form-control" ng-model="x[$index].employmentstartdate" id="{{'empstartid' + $index}}" bs-datepicker /> </div> <!--employment end date--> <div class="form-group" style="display: inline-block;"> <label for="{{'empendid' + $index}}" class="control-label"> <i class="glyphicon glyphicon-calendar"></i> employment end date </label> <input type="text" class="form-control" ng-model="x[$index].employmentenddate" id="{{'empendid' + $index}}" bs-datepicker /> </div> <!--employer number--> <div class="form-group" style="display: inline-block;"> <label for="{{'empnumid' + $index}}" class="control-label"> employer phone number </label> <input type="text" class="form-control" ng-model="x[$index].employernumber" id="{{'empnumid' + $index}}" /> </div> <!--employer st address--> <div class="form-group" style="display: inline-block;"> <label for="{{'empstid' + $index}}" class="control-label"> employer st address </label> <input type="text" class="form-control" ng-model="x[$index].employerstaddress" id="{{'empstid' + $index}}" /> </div> <!--employment city--> <div class="form-group" style="display: inline-block;"> <label for="{{'empcityid' + $index}}" class="control-label"> employer city </label> <input type="text" class="form-control" ng-model="x[$index].employercity" id="{{'empcityid' + $index}}" /> </div> <!--employment state--> <div class="form-group" style="display: inline-block;"> <label for="{{'empstateid' + $index}}" class="control-label"> employer state </label> <input type="text" class="form-control" ng-model="x[$index].employerstate" id="{{'empstateid' + $index}}" /> </div> <!--remove employment--> <div class="text-center"> <button ng-click="removeemployment($index)"> remove </button> </div> </div> <div class="text-center" style="padding: 7px;"> <button ng-click="addemployment()" class="btn btn-info btn-xs"> add together additional employment </button> </div> </fieldset> <button ng-click="saveapplication()" class="btn btn-warning"> submit </button>

what missing here?

try changing ng-model not include [$index]. seems repeating on array of objects , trying access numerical index of object.

i think assigning to:

{ 1: field one, 2: field 2 ... }

ex:

ng-model="x.employmentstatusid"

i think issue.

javascript html angularjs angularjs-scope

Comments

Popular posts from this blog

assembly - What is the addressing mode for ld, add, and rjmp instructions? -

vowpalwabbit - Interpreting Vowpal Wabbit results: Why are some lines appended by "h"? -

Is there a way to convert an HTML page styled with Bootstrap CSS into email-compatible html? -