我在AngularJs中创建了一个下拉过滤器。请看链接。
http://plnkr.co/edit/c5Hrqfv1eA5qfQpkYR41?p=preview
它运行正常,但我想将当前的JSON替换为新的JSON。
$scope.data={
"language": "en",
"0": {
"id": "2222",
"deck": [
{
"id": "2421",
"level": "5",
"name": "Plaza Deck 5"
},
{
"id": "2433",
"level": "6",
"name": "Fiesta Deck 6"
},
{
"id": "2442",
"level": "7",
"name": "Promenade Deck 7"
}
]
}
}
我想用上面的JSON进行更改。
请帮忙。
感谢。
答案 0 :(得分:1)
我不知道你为什么要从简单的数组切换到复杂的数组。
但这是你的解决方案
<强> HTML 强>
<select ng-model="filterDeck1.deckDetail1" ng-options="deck.name for deck in data1['0'].deck">
</select>
<强>的JavaScript 强>
//filter for new json structure
$scope.customDeck1 = function (data) {
if (data.id === $scope.filterDeck1.deckDetail1.id) {
return true;
} else {
return false;
}
};
您可以将上面的过滤器代码从控制器移到过滤器,这样做会更方便。
这是Working Fiddle 希望这可以帮到你。感谢。