如何将输入框数据传输到复杂结构JSON

时间:2015-06-11 17:25:07

标签: javascript jquery json

我使用jQuery从API获取JSON字符串。我想显示它并更改一些字段并将PUT更改回API。但似乎很难从输入框中收集信息并将其放入正确的领域。 这是json结构:

{
  "economicStatus": "",
  "title1": "",
  "migrantEducation": "",
  "disability": {
    "status": "",
    "section504Status": "",
    "primaryDisability": {
      "code": "",
      "codesetName": "",
      "item": "object",
      "otherCodeList": [
        {
          "value": "",
          "codesetName": ""
        }
      ]
    },
    "awaitingInitialIDEAEvaluation": ""
  },
  "giftedTalented": "",
  "firstNationalEnrollment": "",
  "alertMessageList": [
    {
      "message": "object",
      "messageType": ""
    }
  ],
  "medicalAlertMessageList": [
    {
      "message": "",
      "severity": ""
    }
  ],
  "projectedGraduationYear": "",
  "onTimeGraduationYear": "",
  "graduationDate": "",
  "economicDisadvantage": "",
  "otherIdList": [
    {
      "idValue": "object",
      "idType": {
        "code": "",
        "codesetName": "",
        "item": "object",
        "otherCodeList": [
          {
            "value": "",
            "codesetName": ""
          }
        ]
      }
    }
  ],
  "name": {
    "nameRole": "",
    "actualNameOfRecord": {
      "prefix": "",
      "familyNameFirst": "",
      "preferredFamilyNameFirst": "",
      "givenName": "",
      "middleName": "",
      "familyName": "",
      "preferredFamilyName": "",
      "preferredGivenName": "",
      "fullName": "",
      "sortName": "",
      "suffix": ""
    }
  },
  "phoneNumberList": [
    {
      "number": "",
      "extension": "",
      "phoneNumberType": {
        "code": "",
        "codesetName": "",
        "item": "object",
        "otherCodeList": [
          {
            "value": "",
            "codesetName": ""
          }
        ]
      },
      "listedStatus": ""
    }
  ],
  "emailList": [
    {
      "emailAddress": "",
      "emailType": {
        "code": "",
        "codesetName": "",
        "item": "object",
        "otherCodeList": [
          {
            "value": "",
            "codesetName": ""
          }
        ]
      }
    }
  ],
  "localId": {
    "idValue": "object",
    "idType": {
      "code": "",
      "codesetName": "",
      "item": "object",
      "otherCodeList": [
        {
          "value": "",
          "codesetName": ""
        }
      ]
    }
  },
  "externalId": {
    "idValue": "object",
    "idType": {
      "code": "",
      "codesetName": "",
      "item": "object",
      "otherCodeList": [
        {
          "value": "",
          "codesetName": ""
        }
      ]
    }
  },
  "addressRefIdList": [
    {
      "value": "",
      "addressRole": ""
    }
  ],
  "otherNameList": [
    {
      "nameRole": "",
      "otherName": {
        "prefix": "",
        "familyNameFirst": "",
        "preferredFamilyNameFirst": "",
        "givenName": "",
        "middleName": "",
        "familyName": "",
        "preferredFamilyName": "",
        "preferredGivenName": "",
        "fullName": "",
        "sortName": "",
        "suffix": ""
      }
    }
  ],
  "demographics": {
    "birthDateVerification": "",
    "sexus": "",
    "birthDate": "",
    "subregionOfBirth": {
      "code": "",
      "codesetName": "",
      "item": "object",
      "otherCodeList": [
        {
          "value": "",
          "codesetName": ""
        }
      ]
    },
    "stateProvinceOfBirth": {
      "code": "",
      "codesetName": "",
      "item": "object",
      "otherCodeList": [
        {
          "value": "",
          "codesetName": ""
        }
      ]
    },
    "placeOfBirth": "",
    "countryOfBirth": {
      "code": "",
      "codesetName": "",
      "item": "object",
      "otherCodeList": [
        {
          "value": "",
          "codesetName": ""
        }
      ]
    },
    "countryArrivalDate": "",
    "citizenshipStatus": "",
    "languageProficiency": "",
    "dwellingArrangement": "",
    "maritalStatus": "",
    "ethnicityList": [
      {
        "code": "",
        "codesetName": "",
        "item": "object",
        "otherCodeList": [
          {
            "value": "",
            "codesetName": ""
          }
        ]
      }
    ],
    "languageList": [
      {
        "languageCode": {
          "code": "",
          "codesetName": "",
          "item": "object",
          "otherCodeList": [
            {
              "value": "",
              "codesetName": ""
            }
          ]
        },
        "languageType": "",
        "dialect": ""
      }
    ],
    "countryOfResidency": {
      "code": "",
      "codesetName": "",
      "item": "object",
      "otherCodeList": [
        {
          "value": "",
          "codesetName": ""
        }
      ]
    },
    "countryOfCitizenshipList": [
      {
        "code": "",
        "codesetName": "",
        "item": "object",
        "otherCodeList": [
          {
            "value": "",
            "codesetName": ""
          }
        ]
      }
    ]
  },
  "electronicIdList": [
    {
      "idValue": "object",
      "idType": {
        "code": "",
        "codesetName": "",
        "item": "object",
        "otherCodeList": [
          {
            "value": "",
            "codesetName": ""
          }
        ]
      }
    }
  ],
  "refId": ""
}

以下是我从API返回的示例数据,其中一些字段为空:

{
  "disability": null,
  "economicStatus": null,
  "migrantEducation": null,
  "title1": null,
  "alertMessageList": null,
  "medicalAlertMessageList": null,
  "projectedGraduationYear": null,
  "onTimeGraduationYear": null,
  "graduationDate": null,
  "giftedTalented": null,
  "economicDisadvantage": null,
  "firstNationalEnrollment": null,
  "otherIdList": [
    {
      "idType": {
        "code": "AuthenticationUsername",
        "item": null,
        "otherCodeList": null,
        "codesetName": "HMH.OtherId"
      },
      "idValue": "ChK@username-60ty"
    },
    {
      "idType": {
        "code": "HMOF UserName",
        "item": null,
        "otherCodeList": null,
        "codesetName": "HMH.OtherId"
      },
      "idValue": "ChK@username-60ty.arda.stu"
    },
    {
      "idType": {
        "code": "Role",
        "item": null,
        "otherCodeList": null,
        "codesetName": "HMH.OtherId"
      },
      "idValue": "learner"
    }
  ],
  "addressRefIdList": null,
  "name": null,
  "localId": {
    "idType": {
      "code": "LASID",
      "item": null,
      "otherCodeList": null,
      "codesetName": "HMH.LocalId"
    },
    "idValue": "79800003270ABCKrtg12"
  },
  "externalId": {
    "idType": {
      "code": "SASID",
      "item": null,
      "otherCodeList": null,
      "codesetName": "HMH.ExternalId"
    },
    "idValue": "NULL"
  },
  "electronicIdList": null,
  "otherNameList": null,
  "demographics": null,
  "phoneNumberList": null,
  "emailList": null,
  "refId": "3329962f-18ab-415f-addb-132cbe613d68"
}

是否有一种使用输入框更改页面中字段的简单方法?我尝试根据需要创建尽可能多的输入框并命名它们并将它们与相应的JSON字段相关联......但它似乎很乏味,无法动态更新数组。

0 个答案:

没有答案