2011-05-06 63 views
0

这是我的JSON响应追加键,值对我的JSON数据

{ 
    "PatientSearchResult": { 
     "Patient": [{ 
      "AccountBalanceCalcMethod": 2, 
      "AlternatePatientID": 0, 
      "AssignmentOfBenifits": 0, 
      "CellPhoneNumber1": null, 
      "CellPhoneNumber2": null, 
      "Citizenship": 0, 
      "Credential": 0, 
      "DateOfBirth": null, 
      "Deceased": 0, 
      "DeceasedDate": "\/Date(-62135578800000-0500)\/", 
      "DoesPatientHaveResidentProof": false, 
      "DriversLicenseNumber": null, 
      "DriversLicenseState": 0, 
      "EmailAddress1": null, 
      "EmailAddress2": null, 
      "Enabled": false, 
      "Ethnicity": 0, 
      "Firstname": "2914 FirstName" 
     }, { 
      "AccountBalanceCalcMethod": 2, 
      "AlternatePatientID": 0, 
      "AssignmentOfBenifits": 0, 
      "CellPhoneNumber1": null, 
      "CellPhoneNumber2": null, 
      "Citizenship": 0, 
      "Credential": 0, 
      "DateOfBirth": "\/Date(378709200000-0500)\/", 
      "Deceased": 0, 
      "DeceasedDate": "\/Date(-62135578800000-0500)\/", 
      "DoesPatientHaveResidentProof": false, 
      "DriversLicenseNumber": null, 
      "DriversLicenseState": 0, 
      "EmailAddress1": null, 
      "EmailAddress2": null, 
      "Enabled": false, 
      "Ethnicity": 0, 
      "Firstname": "4261 FirstName" 
      }, { 
      "AccountBalanceCalcMethod": 2, 
      "AlternatePatientID": 0, 
      "AssignmentOfBenifits": 0, 
      "CellPhoneNumber1": null, 
      "CellPhoneNumber2": null, 
      "Citizenship": 0, 
      "Credential": 0, 
      "DateOfBirth": "\/Date(1136264400000-0500)\/", 
      "Deceased": 0, 
      "DeceasedDate": "\/Date(-62135578800000-0500)\/", 
      "DoesPatientHaveResidentProof": false, 
      "DriversLicenseNumber": null, 
      "DriversLicenseState": 0, 
      "EmailAddress1": null, 
      "EmailAddress2": null, 
      "Enabled": false, 
      "Ethnicity": 0, 
      "Firstname": "Bo" 
      }, { 
      "AccountBalanceCalcMethod": 2, 
      "AlternatePatientID": 0, 
      "AssignmentOfBenifits": 0, 
      "CellPhoneNumber1": null, 
      "CellPhoneNumber2": null, 
      "Citizenship": 0, 
      "Credential": 0, 
      "DateOfBirth": "\/Date(-2192126400000-0400)\/", 
      "Deceased": 0, 
      "DeceasedDate": "\/Date(-62135578800000-0500)\/", 
      "DoesPatientHaveResidentProof": false, 
      "DriversLicenseNumber": null, 
      "DriversLicenseState": 0, 
      "EmailAddress1": null, 
      "EmailAddress2": null, 
      "Enabled": false, 
      "Ethnicity": 0, 
      "Firstname": "Mark" 
      }, { 
      "AccountBalanceCalcMethod": 2, 
      "AlternatePatientID": 0, 
      "AssignmentOfBenifits": 0, 
      "CellPhoneNumber1": null, 
      "CellPhoneNumber2": null, 
      "Citizenship": 0, 
      "Credential": 0, 
      "DateOfBirth": "\/Date(-381697200000-0500)\/", 
      "Deceased": 0, 
      "DeceasedDate": "\/Date(-62135578800000-0500)\/", 
      "DoesPatientHaveResidentProof": false, 
      "DriversLicenseNumber": null, 
      "DriversLicenseState": 0, 
      "EmailAddress1": null, 
      "EmailAddress2": null, 
      "Enabled": false, 
      "Ethnicity": 0, 
      "Firstname": "Scott" 
      }, { 
      "AccountBalanceCalcMethod": 2, 
      "AlternatePatientID": 0, 
      "AssignmentOfBenifits": 0, 
      "CellPhoneNumber1": null, 
      "CellPhoneNumber2": null, 
      "Citizenship": 0, 
      "Credential": 0, 
      "DateOfBirth": "\/Date(-445806000000-0500)\/", 
      "Deceased": 0, 
      "DeceasedDate": "\/Date(-62135578800000-0500)\/", 
      "DoesPatientHaveResidentProof": false, 
      "DriversLicenseNumber": null, 
      "DriversLicenseState": 0, 
      "EmailAddress1": null, 
      "EmailAddress2": null, 
      "Enabled": false, 
      "Ethnicity": 0, 
      "Firstname": "John" 
      }, { 
      "AccountBalanceCalcMethod": 2, 
      "AlternatePatientID": 0, 
      "AssignmentOfBenifits": 0, 
      "CellPhoneNumber1": null, 
      "CellPhoneNumber2": null, 
      "Citizenship": 0, 
      "Credential": 0, 
      "DateOfBirth": "\/Date(-880830000000-0500)\/", 
      "Deceased": 0, 
      "DeceasedDate": "\/Date(-62135578800000-0500)\/", 
      "DoesPatientHaveResidentProof": false, 
      "DriversLicenseNumber": null, 
      "DriversLicenseState": 0, 
      "EmailAddress1": null, 
      "EmailAddress2": null, 
      "Enabled": false, 
      "Ethnicity": 0, 
      "Firstname": "Dagwood"     
     }, { 
      "AccountBalanceCalcMethod": 2, 
      "AlternatePatientID": 0, 
      "AssignmentOfBenifits": 0, 
      "CellPhoneNumber1": null, 
      "CellPhoneNumber2": null, 
      "Citizenship": 0, 
      "Credential": 0, 
      "DateOfBirth": null, 
      "Deceased": 0, 
      "DeceasedDate": "\/Date(-62135578800000-0500)\/", 
      "DoesPatientHaveResidentProof": false, 
      "DriversLicenseNumber": null, 
      "DriversLicenseState": 0, 
      "EmailAddress1": null, 
      "EmailAddress2": null, 
      "Enabled": false, 
      "Ethnicity": 0, 
      "Firstname": "Clyde" 
      }, { 
      "AccountBalanceCalcMethod": 2, 
      "AlternatePatientID": 0, 
      "AssignmentOfBenifits": 0, 
      "CellPhoneNumber1": null, 
      "CellPhoneNumber2": null, 
      "Citizenship": 0, 
      "Credential": 0, 
      "DateOfBirth": "\/Date(-249678000000-0500)\/", 
      "Deceased": 0, 
      "DeceasedDate": "\/Date(-62135578800000-0500)\/", 
      "DoesPatientHaveResidentProof": false, 
      "DriversLicenseNumber": null, 
      "DriversLicenseState": 0, 
      "EmailAddress1": null, 
      "EmailAddress2": null, 
      "Enabled": false, 
      "Ethnicity": 0, 
      "Firstname": "Fred" 
      }] 
    } 
} 

我试图解析它这样。

function SortByName(x,y) {   
    return ((x.LastName == y.LastName) ? 
     0 : ((x.LastName > y.LastName) ? 1 : -1));  
} 

function RenderPatientSearchData(PatientSearchResponse){ 
    var PatientSearchData = JSON.parse(PatientSearchResponse); 
    var results = PatientSearchData['PatientSearchResult']; 
    results.Patient.sort(SortByName); 
    for (i = 0, len = results.PatientSearchResult.Patient.length; i < len; i++) { 
     // some code here 
    } 
    //.... 
} 

如何将键值对添加到我的JSON中。我想追加

Header:'somevalue' 

我该如何将标头标签附加到每个数据的第一项。有的像这将使我区分,这些都是一个名称,这为B名称...

你可以看到数据在这个环节上的样本响应......像这样

https://github.com/appcelerator/KitchenSink/raw/master/Resources/examples/table_view_headers.js

+1

这不是JSON,它只是一个JavaScript对象。 – 2011-05-06 13:05:42

+1

更确切地说:第一个是JSON,但PatientSearchData是JS对象。那么你想改变JSON还是添加属性到'PatientSearchData'? – 2011-05-06 13:08:48

+0

添加属性到我的PatientSearchData ...我正在使用结果对象...所以它的一个JS对象 – 2011-05-06 13:14:06

回答

3

这很简单,如果你想添加一个Javascript对象的属性(而不是操纵JSON字符串)。无论你想添加'标题':'somevalue'只需要:

PatientSearchData.Header = 'somevalue'; 
+0

我如何将它添加到某些对象..和某些对象不应该包含标头 – 2011-05-06 13:20:58

+0

@约翰 - 它可能是像' PatientSearchData.Patient [0] .Header ='somevalue';'把它当作普通的JS对象。 [本文](http://www.quirksmode.org/js/associative.html)将JS对象作为关联数组应该有助于您更好地理解整个主题。 – justkt 2011-05-06 13:22:44

+0

但是我怎样才能添加这个...新的头...和哪里..我很困惑 – 2011-05-06 13:28:55