【问题标题】:How do I increment a value in a table with the previous value in the table?如何用表中的前一个值增加表中的值?
【发布时间】:2019-06-23 21:59:17
【问题描述】:

我制作了一个程序,让您可以使用 JavaScript 和 HTML 输入您的乐谱;这会在具有一致分数的表中添加一个新行。

我希望能够使用相同的输入字段来输入新分数,该分数与之前输入的分数相加。我似乎无法弄清楚如何存储以前输入的分数而不使其成为新输入的分数。

我尝试创建两个不同的列表并将“以前的分数”列表放在全局范围内,但它最终仍然包含相同的分数。

function list_of_scores() {
  var scores = ["1"];
  var count = 1;

  for (var i = 1; i <= number_players; i++) {
    var id = "score_" + count;
    var score = parseInt(document.getElementById(id).value);
    scores.push(score);
    count++;
  }

  return scores;
}

function table_func() {
  var table = document.getElementById("myTable");
  var row = table.insertRow();

  var scores = list_of_scores();

  scores[0] = table_count_1;
  table_count_1++;

  for (var i = 0; i < scores.length; i++) {
    var cell = row.insertCell();
    cell.innerHTML = scores[i];
  }
}

Scores 是输入的分数列表。我需要将此列表的每个元素添加到包含第二组分数的新列表中。列表中的第一个元素不是分数,而是代表记分板上的“回合”。

【问题讨论】:

  • 您需要在帖子中添加更多代码以及示例数据和预期结果。
  • 除了for循环之外,请添加更多代码。会更容易理解。
  • 你的函数怎么没有参数?

标签: javascript arrays increment


【解决方案1】:
//Event listener for submit button of your input field.
document.getElementById("btn").addEventListener("click",()=>{
    let input = document.getElementById("inputText").value;
    let table = document.getElementById("myTable");
    var previousCell = table.rows[table.rows.length-1].innerText;
    var row = table.insertRow(table.rows.length);
    var cell1 = row.insertCell(0);
    //if else statement sets previous cell value to 0 if previous cell returns NaN.
    if(isNaN(parseInt(previousCell))){
        previousCell = "0";
        let newVal = parseInt(previousCell) + parseInt(input);
        cell1.innerHTML = newVal.toString();
    }
    else{
        let newVal = parseInt(previousCell) + parseInt(input);
        cell1.innerHTML = newVal.toString();
    }
});

如果您只想将分数相加,您可以执行以下操作。这段代码所做的只是获取输入字段和前一个单元格的值,将它们相加并使用所述值创建一个新行。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-08-16
    • 2019-02-05
    • 2023-02-03
    • 2020-09-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多