2017-10-09 30 views
0

我使用datatables插件在我angular4應用,我想補充dropdownmenu,但是當我點擊按鈕,它沒有顯示出來問題在一行組按鈕數據表 - angular4

DataTable with Group button Menu ...

正如上文表明,如果我點擊它沒有顯示任何下拉菜單中的任何行的編輯按鈕,我也嘗試添加一個按鈕,並呼籲editRow()但它並沒有調用該方法,在那裏,當我點擊編輯按鈕,在外面它顯示菜單datatable

這裏是我如何在我的組件添加編輯按鈕...

options = { 
    dom: "Bfrtip", 
    ajax: (data, callback, settings) => { 
     this.productService.getProducts().subscribe((data) => { 
     callback({ 
      aaData: data 
     }) 
     }) 
    }, 
    columns: [ 
     { data: "product" }, 
     { data: "dept" }, 
     { mRender : function(data, type, row) { 
      return '<div class="btn-group dropdown" dropdown>'+ 
      '<button class="btn btn-default btn-sm dropdown-toggle txt-color-magenta" dropdownToggle>'+ 
      '<i class="fa fa-gear fa-lg"></i>'+ 
      '<i class="fa fa-caret-down"></i>'+ 
      '</button>'+ 
      '<ul *dropdownMenu class="dropdown-menu">'+ 
      '<li> <a (click)="editRow("'+data+')">Action</a> </li>'+ 
      '<li><a (click)="callMeTwo()">Another action</a></li>'+ 
      '<li><a (click)="callMeThree()">Something else here</a></li>'+ 
      '<li class="divider"></li><li><a (click)="(null)">Separated link</a></li>'+ 
      '</ul>'+ 
      '</div>' 
     } 
     } 
    ], 
    buttons: ['copy', 'excel', 'pdf', 'print'] 
}; 

按照數據表論壇發現herehere如果我添加像下面...

options = { 
    dom: "Bfrtip", 
    ajax: (data, callback, settings) => { 
     this.productService.getProducts().subscribe((data) => { 
     callback({ 
      aaData: data 
     }) 
     }) 
    }, 
    columns: [ 
     { data: "product" }, 
     { data: "dept" }, 
     { defaultContent: '<ul class="demo-btns"> <li>' + 
     '<a (click)="callMeOne()" class="btn btn-success"><i class="fa fa-pencil-square-o"></i> </a>'+ 
     '</li>' }, 
    ], 
    buttons: ['copy', 'excel', 'pdf', 'print'] 
}; 

越來越Cannot read property 'nodeName' of null錯誤,請幫助我如何讓它工作。謝謝。

回答

0

我想通了,並最終使工作......只是要在<button class="btn btn-default btn-sm dropdown-toggle txt-color-magenta" data-toggle="dropdown">添加data-toggle但現在click功能沒有在錨標記<li> <a (click)="editRow(row)" class="btn btn-success">Action</a> </li>工作當我點擊操作它想調用editRow功能,但它沒」噸。 另外我無法弄清楚當我選擇一行時如何調用函數RowSelected