Я пытаюсь собрать информацию от пользователя с помощью подсказок, каждая из которых имеет свои собственные функции.Каждая из этих функций работает сама по себе, как я их проверил.Затем я пытаюсь отобразить информацию в Div с помощью функции financialInfoDisplay (), но получаю следующее сообщение об ошибке
Uncaught TypeError: Невозможно установить свойство 'innerHTML' для null в financialInfoDisplay
и запросы не отображаются в браузере.Почему это и как я могу это исправить?
Я даже пытался включить код для добавления .innerHTML в div в каждой функции, что работает, но как только я добавляю еще одно приглашение в div, первое исчезает.
Я даже пытался добавить параметры вместо глобальных переменных, таких как var userWithdrawal, userName, depositAmount, в financialInfoDisplay (), а затем передать эти переменные в качестве аргументов при вызове указанной функции, но это тоже не сработало.
//GLOBAL VARIABLES
var userWithdrawal, userName, depositAmount;
//GETS ELEMENT FROM DOM
var $ = function (id) {
"use strict";
return window.document.getElementById(id);
};
//GETS USER NAME
function namePrompt () {
"use strict";
userName = window.prompt("Please enter your name");
return userName;
}
//GETS DEPOSIT AMOUNT
function depositAmountPrompt () {
"use strict";
depositAmount = window.prompt("Please enter the amount of money you would like to deposit");
return depositAmount;
}
//GETS WITHDRAWAL Amount
function withdrawalAmount () {
"use strict";
userWithdrawal = window.prompt("Please enter the amount of money you would like to withdrawal from your account");
return userWithdrawal;
}
//DISPLAYS THE PROMPTS WITHIN A DIV
function financialInfoDisplay() {
"use strict";
var infoDisplay = window.document.getElementById('infoDisplay').innerHTML = userName + depositAmount + userWithdrawal;
return infoDisplay;
}
financialInfoDisplay();
//HANDLES ALL EVENT LISTENERS
function init() {
"use strict";
$('nameBtn').addEventListener("click", namePrompt);
$('depositBtn').addEventListener("click", depositAmountPrompt);
$('withdrawlBtn').addEventListener("click", withdrawalAmount)
}
window.addEventListener("load", init);
<style>body {
width: 500px;
margin: 0 auto;
}
#infoDisplay {
border: 3px solid black;
height: 250px;
}
</style>
<body>
<button type="button" id="nameBtn" value>Name</button>
<button type="button" id="depositBtn">Deposit</button>
<button type="button" id="withdrawlBtn">Withdrawl</button>
<div id="infoDisplay"></div>
</body>