【发布时间】:2017-01-08 19:41:03
【问题描述】:
大家好,新年快乐
所以我遇到了一个问题,我不想将所有内容都直接绑定到一个数组中并从那里调用它。我正在构建一个基于老式聊天的 RPG,但在传递由角色统计信息决定的技能方面遇到了问题。基本上我想要做的是:
我有一堆按钮,总共代表 72 种技能:
<td><button type="button" onclick="" class="button" id="math">MATH</button></td>
我想使用他们的 onclick 事件将技能名称和技能等级传递到页面的这个目标区域:
<td><input type="text" id="skill1" value="" readonly /></td>
<td><input type="text" id="skillRate1" value="" readonly /></td>
skillRate(s) 反映在相应的变量中,如下所示:
var math = (mem * 3) + (log * 2);
理想情况下,我将数组中的每个目标接收者分别设置为技能和技能率,这样一旦选择了所有技能,它就会存储在数组中并照此上传到数据库中。
最初我的想法是这样的:
function addSkill(){
var n = 0;
for (n = 0; n < 17; n++){
getElementById("skill" + n) = getElementById(this.id);
getElementById("skillRate" + n) = //figure out some way to turn this into the var for skillRate (getElementById(this.id));
}
}
我这几天一直在胡思乱想,但似乎无处可去,我真的不想把所有技能和他们各自的技能率放在一个数组中,除非我必须这样做。
关于如何完成这个或其他方法的任何想法或建议?
提前致谢!
【问题讨论】:
-
我的建议是将所有数据保留在 JavaScript 端,并仅将 HTML 用于演示目的,但这似乎是您要避免的。
-
如果您想坚持将数据放在 HTML 中,您可能会发现 HTML 数据/数据集属性在这里很有帮助。这是入门sitepoint.com/use-html5-data-attributes
-
感谢 Jacob,但不,我只是想让用户看到他们在单击按钮时选择了一项技能,因此只需将名称和评分放到他们技能列表下的表格中。我都是为了将数据保存在 JS 文件中
-
我已经添加了一个答案,如果不是你想要的,请告诉我。
标签: javascript arrays loops