總結:JSON:取映射數據
有三種dropdowns
每個levelNum
。如levelNum2的下拉列表包含(Department-Unit-1, Department-Unit-2 & Department-Unit-3)
,levelNum3包含(Division-Unit-1 & Division-Unit-2)
,levelNum4包含(Business-Unit-1 & Business-Unit-2)
。
有一個array of objects
.Inside每個對象有一個名爲hierarchyLevels
每個對象有如下JSON
所示在兩個屬性unitName
& levelNum
一個屬性這又是一個array of objects
.Inside。
var data = [{
"hierarchyLevels": [{
"unitName": "Department-Unit-3",
"levelNum": 2
}, {
"unitName": "Division-Unit-2",
"levelNum": 3
}, {
"unitName": "Business-Unit-1",
"levelNum": 4
}]
}, {
"hierarchyLevels": [{
"unitName": "Department-Unit-1",
"levelNum": 2
}, {
"unitName": "Division-Unit-1",
"levelNum": 3
}, {
"unitName": "Business-Unit-2",
"levelNum": 4
}]
}, {
"hierarchyLevels": [{
"unitName": "Department-Unit-2",
"levelNum": 2
}, {
"unitName": "Business-Unit-1",
"levelNum": 4
}]
}]
到目前爲止已經試過:
function getMultipleObjectFromList(propertyName, value, list){
return list.filter(function (item) {
return item.hierarchyLevels.some(function (level) {
return level[propertyName] === value;
});
});
};
var res = getMultipleObjectFromList('unitName','Business-Unit-1',data);
要求:
我想fetch
與另一unitName
相關聯的所有unitName
。所以,如果我從levelNum4
下拉列表中選擇Business-Unit-1
,其他低級別下拉菜單會自動與Business-Unit-1
.i.e levelNum3
下拉相關unitName
填補只包含Division-Unit-2
和levelNum2
下拉列表將包含(Department-Unit-2 & Department-Unit-3)
。
任何即時幫助將非常可觀。謝謝。
請分享你有什麼到目前爲止已經試過。 –
@BlazeSahlzen,我用'迄今試過'的部分更新了這個問題。 –
用if(tempObj.hierarchyLevels [propertyName] === value)替換if(tempObj [propertyName] == value)是否解決了你的問題?如果它沒有幫助,你可以發佈你的函數的結果應該是什麼樣子?結果物體應具有什麼結構? – iulian