Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Edit and create with ng2-smart-table

I am trying to use <ng2-smart-table>. The issue is that I don't know how to bind the plus button (addButtonContent) with some create function data. Now this just opens for me anther row to insert the data. Also how can I do it for the edit button. My code is:

settings = {
   add: {
      addButtonContent: '<i class="ion-ios-plus-outline"></i>', //how to call some function to this one
      createButtonContent: '<i class="ion-checkmark"></i>',
      cancelButtonContent: '<i class="ion-close"></i>',
   },
   edit: {
      editButtonContent: '<i class="ion-edit"></i>',
      saveButtonContent: '<i class="ion-checkmark"></i>',
      cancelButtonContent: '<i class="ion-close"></i>',
   },
   delete: {
      deleteButtonContent: '<i class="ion-trash-a"></i>',
      confirmDelete: true
   },

and my template is:

<ba-card title="Basic Example" baCardClass="with-scroll">
   <div class="form-group">
      <input  #search type="search" class="form-control form-control-lg" placeholder="Search..."  (keyup)="onSearch(search.value)">
   </div>
   <ng2-smart-table [settings]="settings" [source]="source" (deleteConfirm)="onDeleteConfirm($event)"></ng2-smart-table>
</ba-card>
like image 929
Vitaly Menchikovsky Avatar asked Nov 03 '16 14:11

Vitaly Menchikovsky


2 Answers

I wanted to comment on Yousef Al Kahky's answer but im new so i have to answer again:

You also have to add confirmCreate: true, otherwise the method won't be invoked.

add: {
  addButtonContent: '<i class="nb-plus"></i>',
  createButtonContent: '<i class="nb-checkmark"></i>',
  cancelButtonContent: '<i class="nb-close"></i>',
  confirmCreate: true,
},
like image 183
alvarosmh Avatar answered Oct 22 '22 04:10

alvarosmh


in your template add this

     <ng2-smart-table class='form-control' [settings]="settings" [source]="source"  (deleteConfirm)="onDeleteConfirm($event)" (editConfirm)="onSaveConfirm($event)"
 (createConfirm)="onCreateConfirm($event)"  ></ng2-smart-table> 

and then in your component call the new actions

onCreateConfirm(event):void { 
} 

onSaveConfirm(event):void {
}

onDeleteConfirm(event): void {
}
like image 30
Yousef Al Kahky Avatar answered Oct 22 '22 06:10

Yousef Al Kahky