Я пытаюсь построить калькулятор для дневных цен в Angular.
Каждое место в франшизе компании имеет отдельные цены за каждый день. Поэтому я думал, что нужно создать форму, сначала выбрать, которая позволяет вам выбрать местоположение, а затем серию флажков для дней.
У меня возникают проблемы с ng-true-value в флажках, которые выберете правильные цены из моего json файла.
UPDATE: Добавлен Plunkr: http://plnkr.co/edit/MDmrqaH1VzLBzjd5eHgT?p=preview
Рассмотрим этот код:
<p class="kind_section">Choose location</p>
<select ng-model="formData.location" ng-options="location.title for location in data.bso"></select>
<p class="kind_section">Select days</p>
<input type="checkbox" ng-model="location.day.mon" ng-change="calculatePrice()" ng-true-value="{{data.bso[formData.location.ID].prices.monday}}" ng-false-value="0">Ma
<input type="checkbox" ng-model="location.day.tue" ng-change="calculatePrice()" ng-true-value="{{data.bso[formData.location.ID].prices.tuesday}}" ng-false-value="0">Di<br />
<input type="checkbox" ng-model="location.day.wed" ng-change="calculatePrice()" ng-true-value="{{data.bso[formData.location.ID].prices.wednesday}}" ng-false-value="0">Wo
<input type="checkbox" ng-model="location.day.thu" ng-change="calculatePrice()" ng-true-value="{{data.bso[formData.location.ID].prices.thursday}}" ng-false-value="0">Do<br />
<input type="checkbox" ng-model="location.day.fri" ng-change="calculatePrice()" ng-true-value="{{data.bso[formData.location.ID].prices.friday}}" ng-false-value="0">Vr
Сначала выберите set formData с идентификатором местоположения, затем я хочу использовать этот идентификатор, чтобы выбрать дневные цены для соответствующего местоположения и установить их для ng-true-value.
Я использую ng-true-value="{{data.bso[formData.location.ID].prices.monday}}"
для этого. Это не работает.
Когда я устанавливаю идентификатор вручную, как ng-true-value="{{data.bso[0].prices.monday}}"
, он работает. Почему результат выбора не подбирается с помощью ng-true-value?
Это мой json файл:
$scope.data = {
"bso": [
{
"ID": 0,
"title": "Locatie 1",
"prices": {
"monday": 130,
"tuesday": 130,
"wednesday": 200,
"thursday":130,
"friday": 130
}
},
{
"ID": 1,
"title": "Locatie 2",
"prices": {
"monday": 430,
"tuesday": 530,
"wednesday": 600,
"thursday":990,
"friday": 730
}
}
]
};