如何在每次输入所需值时出现提示

时间:2016-12-27 16:09:50

标签: javascript

这是一个简单的JS示例,可行,我正在努力改善"它有点 我是JS的初学者,我希望我不会在这里踩到我的脑袋。

$items

我想要做的是不允许第二个提示出现,直到第一个提示正确(准确)输入(即黄色,红色,蓝色),无论用户输入多少次&#34 ;错误"值。
我知道我必须使用"而#34;但我不知道怎么做。用不同的方法尝试了几次,但没有设法得到理想的结果 还尝试了一些具有类似问题的线程,但无法找到解决此特定问题的方法。
任何帮助或建议都非常受欢迎 谢谢。

4 个答案:

答案 0 :(得分:2)

使用while循环,如下所示

class Elipse
{
  // as you defined
};

class Circle
{
  // As you defined
  explicit operator Ellipse()
  {
    Point lower_left, upper_right;
    // calculate the two points
    return Ellipse(lower_left, upper_right);
  }
};

答案 1 :(得分:0)

试试这个:

var valid_colors = ['yellow', 'red', 'blue'];
var color1;
var color2;

color1 = prompt("Enter first color: yellow, red or blue");

while (!~valid_colors.indexOf(color1)) {
    color1 = prompt("Enter first color: yellow, red or blue");
}

color2 = prompt("Enter second color: yellow, red or blue"); 

while (!~valid_colors.indexOf(color2)) {
    color2 = prompt("Enter second color: yellow, red or blue");
}

//... continue with your code

答案 2 :(得分:0)

我会这样做:

var allowedColors = ['yellow', 'red', 'blue']; //we create array of valid input

var color1 = ''; // initial value is not correct, so user is prompted at least once.

var color2 = '';

while(allowedColors.indexOf(color1) === -1){

    color1 = prompt("Enter first color: yellow, red or blue");

}

while(allowedColors.indexOf(color2) === -1){

    color2 = prompt("Enter second color: yellow, red or blue"); 

} 

答案 3 :(得分:0)

使用while循环,也可以使函数更多次使用

function getUserInput(n) {
  let color;
  while (!(color=="red" || color=="yellow" || color=="blue")) {
    color=prompt("Enter "+n+". color (red, yellow or blue):");
  }
  return color;
}

var c1=getUserInput(1),
    c2=getUserInput(2);