Commit cfaa790c authored by Sander Kvenild's avatar Sander Kvenild
Browse files

Added buttons to sort each value

parent a5181b4b
......@@ -16,9 +16,18 @@
<table>
<tbody id="peaks">
<tr>
<th>Fylke</th>
<th>Navn</th>
<th>Høyde</th>
<th class="headerSort">
Fylke
<button onclick="sortFun('fylke')">sorter</button>
</th>
<th>
Navn
<button onclick="sortFun('navn')">sorter</button>
</th>
<th>
Høyde
<button onclick="sortFun('høyde')">sorter</button>
</th>
</tr>
</tbody>
</table>
......
let peaks = document.getElementById("peaks");
let sorted = true;
fetch('fylkestopper.json')
let newRows = [];
function sortFun(sortField) {
for (const row of newRows) {
row.remove();
}
fetch('fylkestopper.json')
.then(response => response.json())
.then(json => {
let strings = [];
let newJSON = [];
// TODO: vurder å gjøre "fylke" og "navn" til en felles funksjon
switch(sortField){
case "fylke":
// sorterer fylker for seg selv
for (const peak of json) {
strings.push(peak.fylke);
}
strings = strings.sort();
// finner hvilket element som inneholder hvert fylke
for (const name of strings) {
for (const peak of json) {
if (name == peak.fylke) {
newJSON.push(peak);
break;
}
}
}
json = newJSON;
break;
case "navn":
// sorterer navn for seg selv
for (const peak of json) {
strings.push(peak.navn);
}
strings = strings.sort();
// finner hvilket element som inneholder hvert navn
for (const name of strings) {
for (const peak of json) {
if (name == peak.navn) {
newJSON.push(peak);
break;
}
}
}
json = newJSON;
break
case "høyde":
json = json.sort((a, b) => {return b.høyde-a.høyde});
break;
}
for (const peak of json) {
// creating HTML elements
let row = document.createElement('tr');
......@@ -21,5 +73,9 @@ fetch('fylkestopper.json')
row.appendChild(height);
peaks.appendChild(row);
newRows.push(row);
}
});
\ No newline at end of file
});
}
sortFun("fylke")
\ No newline at end of file
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment