【发布时间】:2014-09-17 22:59:52
【问题描述】:
我不断听到我应该如何使用数组和对象来实现动态变量名。我不确定如何让它与我当前的项目一起使用。
我需要html 框的动态变量名称,以及输入分数的动态名称。如何使用我当前的代码完成此操作?
以下是每个玩家的 5 个单独分数中的每一个的 Javascript 提示。
var hole1 = prompt("Enter Hole 1 score:");
var hole2 = prompt("Enter Hole 2 score:");
var hole3 = prompt("Enter Hole 3 score:");
var hole4 = prompt("Enter Hole 4 score:");
var hole5 = prompt("Enter Hole 5 score:");
下面是声明一个变量来存储所有 6 个框,它将保存分数和总分。
var makeScoreBoxes ='<input type ="text" placeholder="Hole 1" id="hole1" /> <input type ="text" placeholder="Hole 2" id="hole2" /> <input type ="text" placeholder="Hole 3" id="hole3" /> <input type ="text" placeholder="Hole 4" id="hole4" /> <input type ="text" placeholder="Hole 5" id="hole5" /> <input type ="text" placeholder="Total Score" id="totalScore" />'
newdiv.innerHTML = makeScoreBoxes;
ni.appendChild(newdiv);
然后将它们全部加起来,并将总数存储在 totalScore 变量中:
totalScore = parseInt(parseFloat(hole1) +
parseFloat(hole2) +
parseFloat(hole3) +
parseFloat(hole4) +
parseFloat(hole5));
然后取hole1、hole2、hole3、hole4和hole5,以及它们的总和,然后将它们全部放入我的index.html输入框中,如下所示:
addTotal = document.getElementById('totalScore').value=totalScore;
addhole1 = document.getElementById('hole1').value=hole1;
addhole2 = document.getElementById('hole2').value=hole2;
addhole3 = document.getElementById('hole3').value=hole3;
addhole4 = document.getElementById('hole4').value=hole4;
addhole5 = document.getElementById('hole5').value=hole5;
hole1、hole2、hole3、hole4、hole5,所有这些都是为了提示用户,询问他们的分数是多少。然后将它们全部放入与变量相同的id的html输入框中,hole1、hole2、hole3、holr4和hole5。由于会有多人输入分数,我如何为每个 html 框 id 和 javascript 提示变量生成/迭代动态名称,以便我可以在任意数量的框中添加尽可能多的分数?
【问题讨论】:
-
这是一个 XY 问题。使用数组,而不是单独的变量。
-
对不起,我是 JS 的新手,对数组还没有做太多。所以只需将条目存储在一个数组中并进行迭代并将它们放入框中,然后重复?
标签: javascript html variables dynamic