javascript - 无法正确显示号码

标签 javascript jquery numbers

我正在开发一个资金管理项目。有一个输入框,您必须在其中输入您的收入。每当我输入号码并单击“输入”时,该号码就会出现在侧面,但是当我添加另一个号码时,它不会正确相加。

HTML

<!DOCTYPE html>
<html>
<head>
    <!-- Edit title -->
    <title>Banking App</title>
    <!-- Stylesheet -->
    <link rel="stylesheet" type="text/css" href="assets/css/style.css">
</head>
<body>
<div class="main">

    <header>
        <h1>Bank Account Manager</h1>
    </header>

    <div class="displayInfo">
        <div class="displayBalance">
            <h2 class="displayBalanceTag">Balance: <span class="displayBalanceNumber"></span></h2>
        </div>
    </div>
    <div class="inputInfo">
        <center>
            <input type="text" name="earned" placeholder="How Much Have You Earned?" class="earned">
            <input type="text" name="spent" placeholder="How Much Have You Spent?" class="spent">
        </center>
    </div>

</div>

<!-- JQuery -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.min.js"></script>
<!-- Main.js -->
<script type="text/javascript" src="assets/js/main.js"></script>
</body>
</html>

JS

// VARIABLES
var balance; //stores users balance
var earnings; //stores users earnings

var earned = $(".earned"); //input users earnings
var spent = $(".spent"); //input users spendings
var displayBalanceNumber = $(".displayBalanceNumber"); //displays users balance

// START
$("document").ready(function () {
    balance = 0;

    init();
})

// INIT
function init() {
    reset(); //resets everything
    $(earned).bind("keypress", addEarnings);
}

function addEarnings(e) {
    //check for keycode 13 ( enter key )
    if(e.which === 13) {
        earnings = $(this).val(); //get value from input
        balance = balance + earnings;
        displayBalanceNumber.html(balance);
        displayBalanceNumber.html(balance);
    }
}

// RESET
function reset() {
    displayBalanceNumber.html(balance); //make value inside balance holder to 0
}

最佳答案

您的行 balance = Balance + Earnings;earnings 视为字符串。当您将字符串添加到数字时,它会将所有数字转换为字符串。您需要做的是将 yield 转换为整数。将该行替换为 balance = Balance++earnings;+收入转换为数字。

关于javascript - 无法正确显示号码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39605313/

相关文章:

javascript - 我的 Javascript 函数没有设置日期

javascript - 这在 JavaScript 中意味着什么?

java.lang.NumberFormatException : For input string: "0.10"

java - 在 Java 中使用货币符号解析价格

javascript - nodejs/javascript 从字符串中删除 URL

javascript - jointJS javascript逻辑电路示例

javascript - 使用 jquery 将特定单词(字符串)大写

jquery - 如何模仿 jquery UI 选项卡

jquery - jqGrid 与 AngularJS

javascript - HTML/CSS : Background Image from raw image data, 不是 url