1
我有一個簡單的過濾器,我要選擇一個特定的值並使用該過濾器進行其他調用。這是我的觀點(我不使用ng-repeat來創建這些單選按鈕)的一個近似表示。ng-model不適用於JSON對象作爲值的角度單選按鈕
<form>
<label>
<input type="radio" name="ptf" ng-value="cntrl.filter.today_filter" ng-model="cntrl.filter.filter_value"> Today
</label>
<label>
<input type="radio" name="ptf" ng-value="cntrl.filter.hour_filter" ng-model="cntrl.filter.filter_value"> Last
</label>
<select ng-model="cntrl.filter.hours" ng-options="num for num in cntrl.filter.time_range"></select>
<label> hours</label>
<label>
<input type="radio" name="ptf" ng-value="cntrl.filter.date_filter" datepicker="" ng-model="cntrl.filter.filter_value">Select a Date
</label>
<button class="btn btn-info float-right" ng-click = "cntrl.refreshData()" >Update</button>
</form>
這基本上給了我3個選項,我可以選擇今天,或最後n
小時或其他日期。以下是我的cntrl
的相關代碼。
vm.filter = {
today_filter: {
type: 'today',
value: 1
},
date_filter: {
type: 'date',
value: 2
},
hour_filter: {
type: 'hours',
value: 3
},
hours: 8,
today: getFormattedDate(vm.current_date),
time_range: [],
filter_value: {
type: 'today',
value: 1
}
};
現在我有FILTER_VALUE(ng-model
)設定爲與type today and value 1
一個對象。所以我期待在默認情況下我應該選擇值爲cntrl.filter.today_filter
的單選按鈕。當我選擇其他單選按鈕時,filter_value
對象應該相應更新。當然這不會發生。這裏有一些基本的東西是錯的嗎?任何關於如何解決這個問題的指針或者對此有不同的方法?
spDashboardCntrl和CNTRL只是一個錯字,而複製和清潔代碼。但'vm.filter.filter_value = vm.filter.today_filter'確實有效。謝謝。 –
很高興得到了幫助。你能爲我(和潛在的未來訪客)提供答案嗎? – Robba