2017-10-21 1 views
0

다음 AJAX와Datatables - 중첩 된 배열 내가 여기에 '비상 사태'배열에 액세스하려고

{"organizationUuid":1,"emergencyUuids":null,"emergencies":[{"emergencyUuid":1,"emergencyTitle":"Student Fainted in Class","pickupLocation":"1122 Fowler St. 30309","possiblePatientUuids":[1,2],"identifiedPatientUuid":null,"emergencyState":"PENDING"},{"emergencyUuid":2,"emergencyTitle":"Car Accident on I85","pickupLocation":"I85 between exits 89 and 91","possiblePatientUuids":[3,4],"identifiedPatientUuid":null,"emergencyState":"PENDING"},{"emergencyUuid":3,"emergencyTitle":"Man had Heart Attack in Restaurant","pickupLocation":"Subway on Georgia Tech Campus","possiblePatientUuids":[5,6],"identifiedPatientUuid":null,"emergencyState":"ACTIVE"},{"emergencyUuid":4,"emergencyTitle":"Dog bit Man in Neighborhood","pickupLocation":"2022 Happy Hills 30456","possiblePatientUuids":[7,8],"identifiedPatientUuid":null,"emergencyState":"CLOSED"},{"emergencyUuid":5,"emergencyTitle":"Alcohol Poisoning at PIKE Fraternity","pickupLocation":"3212 Notso Happy Hills 30213","possiblePatientUuids":[9,10],"identifiedPatientUuid":null,"emergencyState":"CLOSED"}]} 

:

var table = $('#emergenciesTable').DataTable({ 
    "sAjaxSource": "/api/organization/"+token+"?verbose=true", 
    "sAjaxDataProp": "", 
    "order": [[ 0, "asc" ]], 
    "aoColumns": [ 
     { "mData": "emergencies.emergencyTitle" }, 
     { "mData": "emergencies.pickupLocation" }, 
     { "mData": "emergencies.emergencyState" } 
    ] 
}) 

그러나 아무것도 렌더링하지 않습니다. 콘솔에 오류가 표시되지 않습니다.

내가 뭘 잘못하고 있는지 알기!

답변

0

대신 emergencies 배열에 가리 키도록 sAjaxDataProp를 설정 : 다음 작동

var table = $('#emergenciesTable').DataTable({ 
    "sAjaxSource": "/api/organization/"+token+"?verbose=true", 
    "sAjaxDataProp": "emergencies", 
    "order": [[ 0, "asc" ]], 
    "aoColumns": [ 
     { "mData": "emergencyTitle" }, 
     { "mData": "pickupLocation" }, 
     { "mData": "emergencyState" } 
    ] 
}) 

->http://jsfiddle.net/Lbx49x99/

내가 사용중인 버전을 잘 모릅니다 만, 사용되지 않는 sAjaxSource 개념은 언젠가 일몰. 1.10.x부터 구문은

ajax: { 
    url: "/api/organization/"+token+"?verbose=true", 
    dataSrc: 'emergencies' 
} 
+0

입니다. 감사! – Bryce