如果条件为false,则在循环中保持提示
Keep prompting in loop on false if condition
我正在制作一个程序,老师在其中输入学生的姓名和与一定数量的作业相对应的成绩(老师指定作业)。
我想让它成为一个数值,为输入的成绩。所以,我添加了这个代码:
for (var g = 1; g <= assignments; g++) {
var grade = prompt("Please enter the student score for assignment" + g + ".");
if(typeof grade === 'number' && Math.Round(grade) % 1 == 0) {
return true;
}
else{
var grade = prompt("Please enter the student score for assignment" + g + ".");
}
var gradecolumn = document.createElement("td");
var gradetext = document.createTextNode(grade);
gradecolumn.appendChild(gradetext);
rowtwo.appendChild(gradecolumn);
}
我把这个放下了。。。但我想让它继续提示,直到用户输入有效的数据类型
我遇到的另一个问题是,我想把成绩加在一起输入后,计算一个累积成绩,以在一定的评分表上分配字母成绩。。。我知道我会通过多条件if/else-if语句来分配字母等级。但我不知道如何在输入成绩后调用成绩,以及如何将它们相加,以便将结果输入到多条件部分。
如有任何帮助,我们将不胜感激。。另外,我应该使用parseInt来处理这些问题吗?
var range = {"A": 100, "B": 75, "C": 50, "D": 30, "E": 20, "F": 10}, score = 0;
for (var g = 1; g <= 3; g++) {
var grade = undefined, letter = '';
while (!grade) {
var grade = prompt("Please enter the student score for assignment" + g + ".");
if (parseInt(grade)) {
// accumulate score
score += parseInt(grade);
}
// grade is not a number
else grade = undefined;
}
}
// check for mark
for (key in range) {
if (score<range[key]) letter = key;
}
if (!letter) alert("score "+score+" is out of range!");
else {
alert(letter); // now you have it
}
演示也更新了:http://jsfiddle.net/vladkras/jNg2m/2/
试试这个:
var g = 1;
var assignments = 5;
var done = false;
var grade, gradecolumn, gradetext;
while (!done)
{
grade = prompt("Please enter the student score for assignment " + g + ".");
if((grade+'').search(/^[0-9]{1,3}$/) > -1)
{
gradecolumn = document.createElement("td");
gradetext = document.createTextNode(grade);
gradecolumn.appendChild(gradetext);
rowtwo.appendChild(gradecolumn);
// increment the counter
g++;
if (g > assignments)
{
done = true;
}
}
else
{
alert('Please enter a valid score for assignment '+g+'.');
}
}
相关文章:
- 通过提示中的循环触发iFrame中的输入按钮(JavaScript)
- Javascript提示和警报输入一个数字,它将循环,您将输入数字以获得它的平均值
- 当仅在处提示停止时,如何循环回以前的函数
- 使用变量提示的循环和函数
- 从Javascript中的循环提示输入中分配多个变量
- 如何使用d3js为循环中的圆环图添加工具提示
- 代码中的 JQuery 淡入淡出具有错误提示循环
- 在while循环之后提示用户,并根据用户的回答使变量等于一个值(javascript)
- 无法在 do while 循环中结束提示框进程
- 从提示和循环中获取数字
- 在while循环中写入提示
- Tic-Tac-Toe——无限循环——我如何提示第二步
- 如果条件为false,则在循环中保持提示
- JS提示:Don't在循环中生成函数
- Javascript:用for循环提示和打印
- 在 JavaScript 中使用 for 循环编写代码,提示用户输入任意数量的数字,打印这些数字中最大和最小的数字
- 如果答案不正确,我如何循环回提示
- 如何在不使用Break的情况下停止无限提示循环?
- Javascript提示被取消,在While循环中不行为
- 使用提示符和jQuery让用户复制文本框中的文本时的提示循环