Just starting out with Ajax but I am having a bit of an issue understanding if this is even possible. I have a db.json file that I am retrieving with Ajax.
{
"transactions": [
{
"date": "4/3/2021",
"description": "Electric bill",
"type": "Debit", "amount": 250.00
},
{
"date": "1/15/2022",
"description": "Venmo",
"type": "Debit",
"amount": 80.00
}
]
}
The Ajax function on window.onload
window.onload = function () {
var ajax = new XMLHttpRequest();
ajax.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
jsonObj = JSON.parse(this.responseText);
return jsonObj;
}
};
ajax.open("GET", "../titan-bank/db.json", true);
ajax.send();
Immediately after, the JSON file should be sent over to the this class that will then should iterate through the JSON file and output the information.
var transactions = new Transactions;
transactions.getTransactions();
var transactionDisplay = $("transactionDisplay");
class Transactions {
constructor (date, description, type, amount) {
this.date = date;
this.description = description;
this.type = type;
this.amount = amount;
}
getTransactions () {
for (let id of values) {
//adds index for each transaction
var index = values.indexOf(id) + 1;
//prints out array of transactions
transactionDisplay.innerHTML += ("<br>Transaction #" + index + " Date: " + id.date + " Description: "
+ id.description + "<br> Type: " + id.type + " Amount: $"
+ id.amount.toFixed(2) + "<br>");
}
}
Initially I was using "values" from locally available array, but now need to get this information from the JSON file. Any hints as to what I can do here?
fetchinstead of the old-fashionedXMLHttpRequest.