-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmain.js
89 lines (68 loc) · 2.6 KB
/
main.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
var pageCounter = 1;
var animalContainer = document.getElementById("animal-info");
var btn = document.getElementById("btn");
btn.addEventListener("click", function() {
var ourRequest = new XMLHttpRequest();
var requestURL = 'https://learnwebcode.github.io/json-example/animals-' + pageCounter + '.json';
console.log(requestURL)
ourRequest.open('GET', requestURL);
ourRequest.onload = function() {
if (ourRequest.status >= 200 && ourRequest.status < 400) {
var ourData = JSON.parse(ourRequest.responseText);
renderHTML(ourData);
} else {
console.log("We connected to the server, but it returned an error.");
}
}
ourRequest.onerror = function() {
console.log("Connection error");
}
ourRequest.send();
pageCounter++;
if (pageCounter > 3) {
btn.classList.add("hide-me");
}
});
function renderHTML (data) {
var htmlString = "";
// loop through array of pet objects
for (var i=0; i < data.length; ++i) {
/* FOOD - Likes */
var likesString = "";
var dislikesString = "";
likesString += "<ul>";
for (ii = 0; ii < data[i].foods.likes.length; ++ii) {
likesString += " <li>" + data[i].foods.likes[ii] + "</li>";
}
likesString += "</ul>";
/* FOOD - Dislikes */
dislikesString += "<ul>";
for (ii = 0; ii < data[i].foods.dislikes.length; ++ii) {
dislikesString += " <li>" + data[i].foods.dislikes[ii] + "</li>";
}
dislikesString += "</ul>";
htmlString += "<section class='animal_profile'>";
/* NAME */
htmlString += " <h3>" + data[i].name + "</h3>";
htmlString += " <table id='tbl_" + data[i].name + "'>";
/* SPECIES */
htmlString += " <tr>";
htmlString += " <td><h4>Species:</h4></td>";
htmlString += " <td>" + data[i].species + "</td>";
htmlString += " </tr>";
htmlString += " <tr>";
htmlString += " <td colspan='2'><h4>Foods:</h4></td>";
htmlString += " </tr>";
htmlString += " <tr>";
htmlString += " <td><h5>Likes</h5></td>";
htmlString += " <td><h5>Dislikes</h5></td>";
htmlString += " </tr>";
htmlString += " <tr>";
htmlString += " <td>" + likesString + "</td>";
htmlString += " <td>" + dislikesString + "</td>";
htmlString += " </tr>";
htmlString += " </table>";
htmlString += "</section>";
}
animalContainer.insertAdjacentHTML('beforeend', htmlString);
}