如何通过 javascript 更改 json 对象

How to change a json object via javascript

我正在尝试让用户输入要通过 json 传递的 jira 项目。我目前拥有的是我通过其他评论找到的但没有帮助。

Javascript:

document.getElementById('scYes').onclick = function() {
   var jiraProject = document.getElementById('jiraProject');
   const xhr = new XMLHttpRequest();
   const url = 'https://jira2dev.cerner.com/rest/api/2/issue/';
   xhr.open("POST", url, true);
   xhr.setRequestHeader("Content-Type", "application/json");
   xhr.onReadyStateChange = function() {
    if (xhr.readyState == 4 && xhr.status == 200) {
        var json = JSON.parse(' "fields": { "project": {"key": "TENX" }, "parent":{ "ID": "1","key": "TENX-410"},"summary": "Test Entering Task","description": "TEST","issuetype":{"id": "5"}}');

        for (var i = 0; i < json.length; i++) {
            if (json[i].Id == 1) {
                json[i].parent.key = jiraProject;
                break;
            }
        }

        console.log(json);
        xhr.send();
    }
};

};

我希望能够请求用户输入,并根据输入更改 jira 父键。这应该创建一个 jira 子任务,其父任务是用户输入的任务。

因为你的 json[i].Id 不存在...你有类似的东西 json[i].fields.parent.id

并且您的 jiraProject 必须执行相同的模式

你可以在这里测试: https://www.w3schools.com/js/js_json_parse.asp

注意您的 json 结构;应该是这样的 >

'{ "name":"John", "age":30, "city":"New York"}'

您只需像添加任何其他字符串一样将其添加到代码中。

'{"name": "John", "age": 30, "country": +"'user input'"+ ,"city":"New York"}'