2013-08-06 61 views
11

Cách thêm nhiều giá trị json vào một ô đơn lẻ của DataTable. Tôi đang đi qua các tài liệu datatables nhưng không thể có được một ví dụ rõ ràng.Cách thêm nhiều giá trị json vào một ô duy nhất của dataTable

Tôi có chuỗi JSON sau mà tôi đang truy cập nó thông qua một phiên vào một DataTable.

<textarea id="Report" type="text" style="" name="Report"> 
    [ 
    { 
    "Identifier": "0", 
    "LastName": "Cooper", 
    "FirstName": "Benny", 
    "MiddleInitial": "P", 
    "MRN": "7854753", 
    "Age": "30", 
    "Gender": "Female", 
    "Location": 
     { 
      "Bed": "1", 
      "Room": "A", 
      "unit": "NU1", 
      "facility": "Fac1" 
     }, 
    "ServiceDate":"05/03/2013", 
    "ChargeAndDx":"99222 - 410.01,428", 
    "BillingProvider":"Palmer, James", 
    "title":"Add", 
    "start":"2013-08-07", 
    "url":"#", 
    "textColor":"red" 
    }] </textarea> 

trên trang khác, nơi tôi truy cập vào phiên giao dịch trong DataTable là AAS sau:

$(document).ready(function(){ 

var ReportData=JSON.parse(document.getElementById("Report").innerHTML); 
     Report=$('#patientDataTables').dataTable 
     ({ 
      "bJQueryUI":true, 
      "bScrollCollapse":true, 
      aaData:patientReportData, 
      "aoColumns": 
       [ {"mData":"LastName","sClass":"left"}, 
        {"mData":"ServiceDate","sClass":"left"}, 
        {"mData":"ChargeAndDx","sClass":"left"}, 
        {"mData":"BillingProvider","sClass":"left"}, 
        {"mData":"null","sClass":"center","sDefaultContent":"<a href='' class='editor_menu'>menu</a>"} 

       ] 
     }); 

Trong DataTable của tôi nơi LastName xuất hiện tôi muốn FirtName, đệm viết tắt, MRN và tuổi tác như tốt.

Làm thế nào là xong. Nếu một số người biết cách nhanh chóng để làm điều này.

Trả lời

24

Trước DataTables 1.10.x, bạn có thể sử dụng tham số mRender như thế này:

"aoColumns":[ 
    {"mData":"LastName", 
    "sClass":"left", 
    "mRender":function(data, type, full){ 
     return full.FirstName + full.LastName + full.MiddleInitial; 
    } 
    }, 
    {"mData":"ServiceDate","sClass":"left"}, 
    {"mData":"ChargeAndDx","sClass":"left"}, 
    {"mData":"BillingProvider","sClass":"left"}, 
    {"mData":"null","sClass":"center","sDefaultContent":"<a href='' class='editor_menu'>menu</a>"} 
] 

Bắt đầu từ DataTables 1.10.x, bạn có thể sử dụng columns.render tài sản như thế này:

"columns":[ 
    {"data":"LastName", 
    "className":"left", 
    "render":function(data, type, full, meta){ 
     return full.FirstName + full.LastName + full.MiddleInitial; 
    } 
    }, 
    {"data":"ServiceDate","sClass":"left"}, 
    {"data":"ChargeAndDx","sClass":"left"}, 
    {"data":"BillingProvider","className":"left"}, 
    {"data":"null","className":"center","defaultContent":"<a href='' class='editor_menu'>menu</a>"} 
] 
+0

Thank bạn cho phản ứng. Cho đến khi tôi chờ đợi một phản hồi, tôi đã mệt mỏi một cách khác và nhân bản chuỗi JSON. Có FirstName và LastName và Middle trong một đối tượng/trường duy nhất và sau đó chuyển nó vào dataTable. Nhưng tôi sẽ thử điều này. Điều này trông giống như và thay thế dễ dàng. – patz

+0

Nó hoạt động. cảm ơn – patz

+0

Hoạt động nhưng bạn nên sử dụng tham số "dữ liệu", được cài đặt với hàng hiện tại của mảng JSON mà bạn có, vì trong trường hợp bạn có nhiều hàng đầy đủ hơn sẽ chứa tất cả các đối tượng, không chỉ hàng hiện tại. Cảm ơn – Genaut

Các vấn đề liên quan