无法更正if赌场风格余额的陈述

时间:2015-05-09 20:51:23

标签: javascript

Rookie javascripter在这里,我正在尝试为赌场创建一个骰子游戏,其中用户需要下注骰子将落在哪个号码上。我知道我需要使用if语句来确定猜测是否正确,并从总余额乘以或减去用户赌注。我一直试图解决这个问题一段时间,似乎没有取得多大进展。

我相信这是HTML所需的基本结构。

 <html>

        <h1>Rolling the Die</h1>

        <h4>Can You Guess Correctly?</h4>

    <div id="die1" class="dice"></div>
    <br>       
        <form>
            Guess: <input type="number" name="guess" id="guess" min="1" max="6">
            Stake: <input type="number" name="stake" id="stake">
            <br>
            <br>
            Balance: <span id="balance">1000</span>
        </form>
    <br>
    <button onclick="rollDice()">Roll Dice</button>

    </div>  <!---end of wrapper--->

    <script type="text/javascript" src="dice.js"></script>

</body>
</html>

但是,我的主要问题是javascript文件,因为我似乎无法按原样制作if语句。

 //function called to initiate the roll

function rollDice() {
'use strict'
var balance = 1000; //declares balance
var guess = document.getElementById("guess");   //takes the users guess
var stake = document.getElementById("stake");   //takes the users stake
var die1 = document.getElementById("die1");     //provides the input for the die
var d1 = Math.floor(Math.random() * 6) + 1;     //generates a random number between 1 and 6
die1.innerHTML = d1;    //displays the number generated by the die

//if statement to determine whether the users guess was correct and calculate balance

if (d1 == guess) {     
    balance = balance + (stake * 5);
} else {
    balance = balance - stake;
}
}

非常感谢帮助。

1 个答案:

答案 0 :(得分:0)

您需要实际获取文本框的value,而不是文本框本身。

例如,而不是使用

var guess = document.getElementById("guess");

使用

var guess = document.getElementById("guess").value;

此外,每次单击按钮时,您都会将balance重置为1000。您需要将balance存储为运行总计,并在最后将其打印回HTML。目前,即使您正确计算balance,您也无法使用它。