javascript - 我需要帮助在 JS 中编写这个 IF 语句

标签 javascript if-statement

我有一个游戏,您可以在每个回合的输入框中输入分数。我编写了一个 for 循环来添加每轮的总分,并将其显示在“总分”框中。但在本游戏中,如果您所有回合结束时的“总分”大于或等于 50,您将获得 10 分奖励。

所以我创建了另一个名为“Total”的输入框。我想创建一个 IF 语句,以便如果“总分”输入框中的数字大于或等于 50,则您的分数加上 10 分奖励将显示在其下方的“总分”框中。我怎样才能做到这一点?

这是我的代码:

//input form   

Turn 1: <input onblur="findTotal()" type="text" name="qty">
<br>
Turn 2: <input onblur="findTotal()" type="text" name="qty">
<br>
Trun 3: <input onblur="findTotal()" type="text" name="qty">
<br>
<b>Total Score:</b> <input type="text" name="TotalScore" id="TotalScore">
<br>
Bonus (+10): <input type="text" name="bonus">
<br>
<b>Total:</b> <input type="text" name="Total">

//for loop

function findTotal() {
    var arr = document.getElementsByName('qty');
    var tot = 0;
    for (var i = 0; i < arr.length; i++) {
        if (parseInt(arr[i].value))
            tot += parseInt(arr[i].value);
    }
    document.getElementById('Total').value = tot;
}
onblur = "findTotal()"

//my attempt at the IF statement ("alert hello" is just a place holder)

var tots = document.getElementById('TotalScore');

if (tots.value >= 50) {
    alert("hello");
}

最佳答案

您可以尝试在 findTotal 函数结束时检查用户是否获得了奖金(您刚刚完成了总分的计算):

function findTotal() {
  var arr = document.getElementsByName('qty');
  var tot = 0;
  for (var i = 0; i < arr.length; i++) {
    if (parseInt(arr[i].value))
      tot += parseInt(arr[i].value);
  }

  document.getElementById('TotalScore').value = tot;

  var bonus = tot >= 50 ? 10 : '';
  document.getElementById('bonus').value = bonus;
  document.getElementById('Total').value = tot + bonus;
}
Turn 1: <input onblur="findTotal()" type="text" name="qty">
<br> Turn 2: <input onblur="findTotal()" type="text" name="qty">
<br> Turn 3: <input onblur="findTotal()" type="text" name="qty">
<br>
<b>Total Score: </b> <input disabled="true" type="text" name="TotalScore" id="TotalScore">
<br> Bonus: <input disabled="true" type="text" id="bonus">
<br>
<b>Total:</b> <input disabled="true" type="text" id="Total">

关于javascript - 我需要帮助在 JS 中编写这个 IF 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45317851/

相关文章:

javascript - dojo/date/locale/format 格式正确,但返回错误日期?

C++ : cout with a terenary if-statement

javascript - 我无法根据选择框选择添加不同的元素

javascript - 检查一个值是否在一个数字范围内

mysql - Postgres 中的 IF-ELSE

if-statement - 下面的 tcl 代码会做什么?

javascript - TypeScript 引用错误 : is not defined

javascript - 接收器上的 Monad 模式

javascript - 如果值= ="string",如何替换 ng-repeat 中的值,否则不显示

javascript - 弹跳球游戏、鼠标检测事件、JavaScript