2017-02-24 20 views
0

超級鏈接我使用row.add()方法動態地添加新行的jQuery數據表。我使用角度js從api獲取數據並將它們作爲新行添加到表中。下面是我的錶行結構。jQuery的數據表添加具有row.add()方法

<tr ng-repeat="datum in userData"> 
       <td>{{datum.no}}</td> 
       <td><a href="/Public/User/{{datum.subId}}">{{datum.fullName}}</a></td> 
       <td>{{datum.productsIntoAccount}}</td> 
       <td>{{datum.state}}</td> 
       <td>{{datum.country}}</td> 
</tr> 

負責動態添加行的代碼如下所示。

datatable = $("#data-table").DataTable({ 
         "responsive": true, 
         "paging": false 

}); 
var data = response.data; 
       for (var i = 0; i < data.length; i++) { 
        datatable.row.add([ 
         data[i].no, 
         data[i].fullName, 
         data[i].productsIntoAccount, 
         data[i].state, 
         data[i].country, 
         data[i].subId 
        ]).draw(false); 
} 

正如你在錶行結構看,fullName是需要subId從API的數據,將其添加在HREF超鏈接。我的問題是,我該如何使用row.add()方法在表中的數據添加超鏈接?

回答

0

編輯:基於在註釋部分給出我已經簡化了答案建議。

var data = response.data; 
       for (var i = 0; i < data.length; i++) { 
        datatable.row.add([ 
         data[i].no, 
         '<a href="/Public/User/' + data[i].subId + '">' + data[i].fullName + '</a>', 
         data[i].productsIntoAccount, 
         data[i].state, 
         data[i].country 
        ]).draw(false); 
       } 
+1

這不是正確的做法。您可以使用字符串與HTML中'row.add()'或使用'columns.render'選項爲基於行的數據的單元格的內容。 –

+0

帶html的字符串似乎很容易實現。我會執行它,然後我會更新答案。 –

+0

用繩子,你需要小心轉義HTML特殊字符,如'fullName'和''subId''<' or '>。 –