Quantcast
Channel: ASP.NET Core
Viewing all articles
Browse latest Browse all 9386

How to use same form or page for insert and update . it edit but cannot insert ?

$
0
0

problem

How to use same form or page for insert and update . it edit but cannot insert ?

I have component name employees used for edit record 

i need to use it for insert but cannot do that .

it load data on case of passing record for edit or not meaning i need to prepare this form for two purpose insert and edit

so that please how to modify it for insert also ?

export class EmployeesComponent{
    employees = {}
    empformlabel: string = 'Add Employee';  
    empformbtn: string = 'Save';
    constructor(private formBuilder: FormBuilder ,private router: Router , private api:ApiService,private toastr: ToastrService){}
    addForm: FormGroup; 
    btnvisibility: boolean = true; 
    ngOnInit() {
      this.addForm = this.formBuilder.group({  
        employeeId: [],  
        employeeName: ['', Validators.required],  
        branchCode: ['', [Validators.required, Validators.maxLength(2)]]
      }); 
       let empid = localStorage.getItem('editEmpId'); 
       console.log(empid) ;
    if (+empid > 0) {  
      console.log("success") ;
      this.api.getEmployeeById( +empid).subscribe(data => {  
        this.addForm.patchValue(data);
        console.log(data);  
      })  
      this.btnvisibility = false;  
      this.empformlabel = 'Edit Employee';  
      this.empformbtn = 'Update'; 
    }  

      }


onSubmit() {  
  console.log('Create fire');  
  this.api.createEmployee(this.addForm.value)  
    .subscribe(data => {  
      this.router.navigate(['employeelist']);  
    },  
    error => {  
      alert(error);  
    });  
}  
onUpdate() {  
  console.log('Update fire');  
  this.api.updateEmployee(this.addForm.value).subscribe(data => {  
    this.router.navigate(['employeelist']);  
  },  
    error => {  
      alert(error);  
    });  
}  

}
<div class="col-md-6">  <h2 class="text-center">{{empformlabel}}</h2> <form [formGroup]="addForm" novalidate class="form">  <div class="form-group">  <label for="employeeId">employee Id:</label>  <input type="number" formControlName="employeeId" placeholder="employeeId" name="employeeId" class="form-control" id="employeeId">  </div>  <div class="form-group">  <label for="branchCode">Branch Code:</label>  <input type="number" formControlName="branchCode" placeholder="branchCode" name="branchCode" class="form-control" id="branchCode">  </div>  <div class="form-group">  <label for="employeeName">Employee Name:</label>  <input formControlName="employeeName" placeholder="Employee Name" name="employeeName" class="form-control" id="employeeName">  <div class="alert  alert-danger" *ngIf="addForm.get('employeeName').hasError('required') && addForm.get('employeeName').touched">  
          Employee Name is required  </div>  </div>  <button class="btn btn-success" [disabled]='addForm.invalid' *ngIf="btnvisibility" (click)="onSubmit()">Save</button>  <button class="btn btn-success" [disabled]='addForm.invalid' *ngIf="!btnvisibility" (click)="onUpdate()">Update</button>  <p>Form value: {{ addForm.value | json }}</p> </form>  </div>  


Viewing all articles
Browse latest Browse all 9386

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>