對於這個問題,我幾乎很困難,因爲我對於實際問題提出了這樣的問題!我有兩個選擇:根據AngularJS中另一個選擇元素的值設置選擇選項
選擇1:
<select ng-change="bankSelected()" ng-model="user.bankName">
<option selected value="">Select</option>
<option ng-repeat="bank in banks" value="{{bank.name}}">{{bank.name}}</option>
</select>
選擇2:
<select ng-model="user.branch">
<option selected value="">Select</option>
<option ng-repeat="// what to do??"></option>
</select>
在 'bankSelected()' 在我的控制器功能:
$scope.bankSelected = function() {
console.log('Bank selected: ' + $scope.user.bankName);
}
我有一個我導入所有銀行對象的JSON文件,例如:
{
"banks" : [
{
"name" : "Bank A",
"branches" : [
{
"name" : "Branch 1",
"code" : "1"
},
{
"name" : "Branch 2",
"code" : "2"
}
]
},
{
"name" : "Bank B",
"branches" : [
{
"name" : "Branch 3",
"code" : "3"
},
{
"name" : "Branch 4",
"code" : "4"
},
{
"name" : "Branch 5",
"code" : "5"
}
]
}
]
}
我實際使用的JSON大約有1000行。所以我的問題是,如果用戶在第一個選擇框中選擇'Bank A'
,我希望第二個選擇框顯示'Branch 1'
和'Branch 2'
。同樣,如果用戶選擇'Bank B'
,我想要顯示'Branch 3'
,'Branch 4'
和'Branch 5'
。如果用戶在第一次選擇中沒有選擇任何東西(例如沒有選擇銀行),則第二次選擇(分支)不應該包含任何東西。我相信你明白我在做什麼?
我該如何在AngularJS中做到這一點?
你可以創建一個plunk? – Rabi
爲什麼'ng-repeat ='分支沒有人阻止你更新'bankSelected()'中的'branches' – zeroflagL
@zeroflagL這是否意味着在bankSelected()中我必須有一個很長的switch語句更新分支列表取決於選擇了哪個銀行? – Tiwaz89