![](/img/trans.png)
[英]Find and Replace all occurrences of a phrase in a json string using capturing groups
[英]Find all occurrences of JSON element using jQuery
您如何从rest服务调用中解析出复杂json响应中特定数据点的所有值?
这是我的 JQUERY 代码,用于获取其余服务 json 响应。 我希望为 json 数据中找到的所有“Approver”元素获取所有出现的“Id”并将它们添加到分隔列表 - 最好使用
;
分隔每个“Id”
<!DOCTYPE html>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script><script>
$(document).ready(function(){
$("button").click(function(){
$.ajax({
type: 'GET',
url: 'MySite/Change/Request/12345/Approvals/GetApprovalGroupUsers?changeNumber=98765',
data: { get_param: 'value' },
dataType: 'json',
success: function (data) {
$.each(data, function(index, element) {
$('body').append($('<div>', {
text: element.Id
}));
});
}
});
});
});
</script>
</head>
<body>
<button>Click me to get listing of Id's</button>
</body>
</html>
来自服务的 json 数据如下:
{
"ApprovalSession": "3ebd4e73-7fc5-4113-9ccd-18833318ee09",
"LoadStatus": 0,
"Index": 0,
"ApprovalId": 0,
"Type": null,
"Approver": null,
"ApproverDisplay": null,
"Status": null,
"CreatedBy": null,
"CanBeRemoved": false,
"ConfigurationItems": [
"cigs01e4a002( OPERATING SYSTEM )",
"cigs01e4a002( OPERATING SYSTEM )",
"cigs01e4a004( OPERATING SYSTEM )",
"cigs01e4a004( OPERATING SYSTEM )"
],
"ApprovalReasons": [
{
"AssociatedCI": "abc4a002( OPERATING SYSTEM )",
"AssociatedRuleName": "Default Impact",
"AssociatedRuleApprovalType": null,
"AssociatedRulePartyType": "Targeted Group",
"AssociatedRulePartyName": "Operational Owner",
"AssociatedAdditionalComment": ""
},
{
"AssociatedCI": "xyza004( OPERATING SYSTEM )",
"AssociatedRuleName": "Default Impact ",
"AssociatedRuleApprovalType": null,
"AssociatedRulePartyType": "Targeted Group",
"AssociatedRulePartyName": "Technical Owner",
"AssociatedAdditionalComment": "Substitute Role"
}
],
"PossibleApprovers": [
{
"Approver": {
"Id": "Vzz436",
"Display": "some name",
"LineOfBusinessCode": "25",
"LineOfBusinessName": "Unix",
"LineOfBusinessHierarchy": null,
"PhoneNumber": "+123456789",
"RoleName": null,
"FullName": null,
"LineOfBusiness": null,
"ErrorMessage": null
},
"IsEscalation": false,
"IsDelegate": false
},
{
"Approver": {
"Id": "ppp71",
"Display": "more names",
"LineOfBusinessCode": "5",
"LineOfBusinessName": "Tech",
"LineOfBusinessHierarchy": null,
"PhoneNumber": "+987654321",
"RoleName": null,
"FullName": null,
"LineOfBusiness": null,
"ErrorMessage": null
},
"IsEscalation": false,
"IsDelegate": false
},
{
"Approver": {
"Id": "aaa5",
"Display": "mickey mouse",
"LineOfBusinessCode": "8",
"LineOfBusinessName": "Digital",
"LineOfBusinessHierarchy": null,
"PhoneNumber": "+87877676665",
"RoleName": null,
"FullName": null,
"LineOfBusiness": null,
"ErrorMessage": null
},
"IsEscalation": false,
"IsDelegate": false
}
],
"OriginalApprovals": [ ],
"AggregatedApproval": null,
"IsAggregated": false,
"AggregationId": 0,
"UpdatedBy": null,
"UpdatedDt": null,
"IsGroupActive": false
}
这是您获取所有审批者 ID(以分号分隔)的方式。
var data = { "ApprovalSession": "3ebd4e73-7fc5-4113-9ccd-18833318ee09", "LoadStatus": 0, "Index": 0, "ApprovalId": 0, "Type": null, "Approver": null, "ApproverDisplay": null, "Status": null, "CreatedBy": null, "CanBeRemoved": false, "ConfigurationItems": [ "cigs01e4a002( OPERATING SYSTEM )", "cigs01e4a002( OPERATING SYSTEM )", "cigs01e4a004( OPERATING SYSTEM )", "cigs01e4a004( OPERATING SYSTEM )" ], "ApprovalReasons": [ { "AssociatedCI": "abc4a002( OPERATING SYSTEM )", "AssociatedRuleName": "Default Impact", "AssociatedRuleApprovalType": null, "AssociatedRulePartyType": "Targeted Group", "AssociatedRulePartyName": "Operational Owner", "AssociatedAdditionalComment": "" }, { "AssociatedCI": "xyza004( OPERATING SYSTEM )", "AssociatedRuleName": "Default Impact ", "AssociatedRuleApprovalType": null, "AssociatedRulePartyType": "Targeted Group", "AssociatedRulePartyName": "Technical Owner", "AssociatedAdditionalComment": "Substitute Role" } ], "PossibleApprovers": [ { "Approver": { "Id": "Vzz436", "Display": "some name", "LineOfBusinessCode": "25", "LineOfBusinessName": "Unix", "LineOfBusinessHierarchy": null, "PhoneNumber": "+123456789", "RoleName": null, "FullName": null, "LineOfBusiness": null, "ErrorMessage": null }, "IsEscalation": false, "IsDelegate": false }, { "Approver": { "Id": "ppp71", "Display": "more names", "LineOfBusinessCode": "5", "LineOfBusinessName": "Tech", "LineOfBusinessHierarchy": null, "PhoneNumber": "+987654321", "RoleName": null, "FullName": null, "LineOfBusiness": null, "ErrorMessage": null }, "IsEscalation": false, "IsDelegate": false }, { "Approver": { "Id": "aaa5", "Display": "mickey mouse", "LineOfBusinessCode": "8", "LineOfBusinessName": "Digital", "LineOfBusinessHierarchy": null, "PhoneNumber": "+87877676665", "RoleName": null, "FullName": null, "LineOfBusiness": null, "ErrorMessage": null }, "IsEscalation": false, "IsDelegate": false } ], "OriginalApprovals": [ ], "AggregatedApproval": null, "IsAggregated": false, "AggregationId": 0, "UpdatedBy": null, "UpdatedDt": null, "IsGroupActive": false } data.PossibleApprovers.forEach(function (approver) { document.write(approver.Approver.Id + ';')})
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.