我对我的JavaScript代码有疑问(我在这方面很新......)。我正在进行测试,我将使用他们的答案来计算参与者的分数。我有多个变量来存储这些答案。而且分数的计算也没问题。然后我有一张分数表。就像这样:
<script type="text/javascript">
var row1col1var="Fruit";
var rowicol2var="% of how much I love them";
var applep=34; //result from score calcultaion
var row2col1var="Apple";
var bananasp=65; //result from score calcultaion
var row3col1var="Bananas";
document.write('<center><table width="50%" border="0">');
document.write('<tr align="center"><td>' + row1col1var + '<\/td><td>' + rowicol2var + '<\/td><\/tr>');
document.write('<tr align="center"><td>' + row2col1var + '<\/td><td' + applep + "%" + '<\/td><\/tr>');
document.write('<tr align="center"><td>' + row3col1var + '<\/td><td' + bananasp + "%" +'<\/td><\/tr>');
document.write('<\/table><\/center>'); </script>
在这里,我显示每个&#34;水果&#34;在一张桌子里。我无法工作的是: 我想挑选最好的分数(在这种情况下65,香蕉)并显示:&#34;你最喜欢香蕉。&#34; (即链接65到香蕉和显示香蕉)。我试图给单元格一个名为Apples或Bananas的id并调用id来显示它,但这不起作用。
我的问题分为两部分: 我不能让math.max来处理变量。 2.我不知道如何将最高分与其名称&#34;名称相关联。 (即65属于香蕉)。
我希望你能帮助我!!
答案 0 :(得分:0)
您需要使用更合适的编码方式。对于存储数据,您可以使用对象或数组。我在这个例子中使用了一个数组。 检查一下:
<html>
<head>
<script type="text/javascript">
function getScore(){
var scoreArr = [];
scoreArr.push(['apple', '35']);
scoreArr.push(['apple', '65']);
var maxPercentage = null;
var lovedFruit = '';
var finalScore = '<center><table width="50%" border="0"><tr align="center"><th>Fruits</th><th>% of how much I love them</th></tr>';
for (var i = 0; i < scoreArr.length; i++) {
finalScore += '<tr align="center"><td>' + scoreArr[i][0] + '</td><td>' + scoreArr[i][1] + "%" + '</td></tr>';
if (maxPercentage === null) {
lovedFruit = scoreArr[i][0];
maxPercentage = parseInt(scoreArr[i][1]);
} else {
if (maxPercentage < parseInt(scoreArr[i][1])) {
lovedFruit = scoreArr[i][0];
maxPercentage = parseInt(scoreArr[i][1]);
}
}
}
finalScore += '</table><br>Result is : ' + maxPercentage + ' belongs to ' + lovedFruit + '</center>';
// WITH JAVASCRIPT
var container = document.createElement('div');
container.innerHTML = finalScore;
document.body.insertBefore(container, null); //append div to end
// WITH JQUERY
// $('body').append(finalScore);
}
</script>
</head>
<body onLoad=getScore()>
</body>
</html>
它会将您的数据存储在数组中,然后您可以以更复杂的方式执行任何操作。