[英]Populate table with data from json using dropdowns
我正在制作一個帶有公交時刻表的小型Web應用程序項目。 我試圖使用下拉列表中的json數據填充表格。 我不知道我是否在正確執行json部分,但我堅持解析數據,以便表格顯示所選公共汽車和車站的正確時間。
必須這樣:選擇公交車號,選擇公交車站,然后正確的時間出現在下表中。
HTML選擇部分:
Bus No.: <select ng-model="selectedNr" ng-options="x for (x,y) in busData"></select>
Stop name: <select ng-model="selectedStop" ng-options="x for (x,z) in selectedNr.stops"></select>
然后是表:
<table class="time-table">
<tr ng-repeat="time in busData[selectedNr].stops[selectedStops].time">
<th>{{time.hour}}</th>
<td ng-repeat="minute in time.minutes">{{minute}}</td>
</tr>
角部分:
app.controller("ngCtrl", function ($scope) {
"use strict";
$scope.busData = {
"bus1":{
"id":1,
"stops":{
"stop1":{
"id":1,
"stopName":"stop1",
"time":[
{
"hour": 1,
"minutes": [11, 21,31,41,51]
},
{
"hour": 2,
"minutes": [12, 22,32,42,52]
}
]
},
"stop2":{
"id":2,
"stopName":"stop2",
"time":[
{
"hour": 3,
"minutes": [11, 21,31,41,51]
},
{
"hour": 4,
"minutes": [12, 22,32,42,52]
}
]
}
}
}, (and so on...)
嵌入式柱塞
選擇總線時,SelectedNr不是選定元素的索引,而是數組中整個子元素的索引,因此您無需為每個busData[selectedNr]
進行ng-repeat
,而只需為每個selectedNr
進行ng-repeat
。
這是HTML中main
部分的更正版本。 JSON沒有任何變化。
<main class="content">
<section class="filter-wrapper">
<h2>Bus No.:
<span><select ng-model="selectedNr" ng-options="x for (x,y) in busData"></select></span>
</h2>
<h4>Stop name: <span><select ng-model="selectedStop" ng-options="x for (x,z) in selectedNr.stops"></select></span>
</h4>
</section>
<table class="time-table">
<tr ng-repeat="time in selectedStop.time">
<th>{{time.hour}}</th>
<td ng-repeat="minute in time.minutes">{{minute}}</td>
</tr>
</table>
</main>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.