【发布时间】:2017-02-17 01:36:08
【问题描述】:
如果你输入数字标记,我有一个 switch 语句给你一个字母标记。我没有从 chrome 得到任何错误,所以我不知道我做错了什么。我会只是格式错误吗?
<html>
<body>
<h1>Rank Your Mark!!</h1>
Enter your mark to rank it.
<input type="number" name="grade" id="mark">
<input type="button" name="mark" id="grade" value="Rate" onclick="rateMark()">
<script>
function rateMark(){
switch(grade)
{
case"F":
mark > 50;
break;
case"D":
mark >= 50 && mark <=59.9;
break;
case"C":
mark >= 60 && mark <=69.9;
break;
case"B":
mark >= 70 && mark <= 79.9;
break;
case"A":
mark >= 80 && mark <= 89.9;
break;
case"A+":
mark >= 90 && mark <= 100;
break;
}
document.getElementById("demo").innerHTML = "You got a" + mark;
}
</script>
<br>
<p id="demo"></p>
</body>
</html>
【问题讨论】:
-
switch不能这样工作;你需要一串if/else if。 -
@Blakethepatton 你知道我做错了什么吗,因为它显示的是 [object HTMLInputElement] 而不是字母?
-
@Blakethepatton:嗯,我最初认为
grade是一个数字,字母等级应该是输出,但我想他们可能想要“你得到一个 >= 60 && -
如果超过 60 且低于或等于 69.9 则应该是这种情况。 @瑞安
-
仅供参考,您在引号内的“You got a”之后缺少一个空格
标签: javascript html switch-statement