我试图弄清楚为什么valInt会返回NaN以及如何修复它以便存储存款值。
*编辑:自发布以来做了一些更改。我还在为NaN取得余额。
// JS
`function depositMoney () {
//Select the balance amount
let acctBal = $('.check-balance')
let chkBal = acctBal
let chkBalVal = chkBal.html()
console.log(chkBalVal)
//Needs to accept input.
let input = $('.input')
let depositVal = parseInt(input.val())
console.log('Deposit amount: ' + depositVal)
//Collect info from balance.
let valInt = parseInt(chkBalVal)
console.log('Current balance is: ' + valInt)
//Displaying the checking amount.
let sumTot = (depositVal + valInt)
console.log('Total here:' + sumTot)
acctBal.html('$' + (depositVal + valInt))
}`
// HTML
`<div id="checking" class="account">
<h2>Checking</h2>
<div class="check-balance">$0</div>
<input class="input" type="text" placeholder="enter an amount" />
<input class="deposit" type="button" value="Deposit" />
<input class="withdraw" type="button" value="Withdraw" />
</div>`
答案 0 :(得分:3)
let valInt = parseInt(chkBal)
此代码正在尝试将chkBal
转换为数字,其中chkBal
与acctBal
完全相同 - 一个jQuery对象。
您必须使用命令.val()获取存储在jQuery DOM对象中的值,然后通过修改以let chkBal =
开头的行来将结果转换为数字,如下所示:
let chkBal = acctBal.val();