3

我有一项正在处理的任务,但我的prompt()方法有问题。我看到我可以做一个提示,但我需要几个和数量。

例如...

我创建了一个 HTML 表格,其中包含许多艺术家和包含 DVD、CD 和音频的列。所有价格都在他们的行中。我需要编写一个提示来执行此操作。

使用该prompt()方法,要求用户输入艺术家的姓名、DVD的数量、CD的数量和用户希望购买的录音带的数量。将答案保存在单独的变量中。还要对每个值使用单独的提示。任何建议将不胜感激!

编辑:来自下面评论的代码:

var w=window.prompt("please enter your name");
window.alert(w);
var x=widow.prompt ("Enter how many DVDs you want to buy");
window.alert(x);
var y=window.alert ("Enter how many CDs you want to buy");
window.alert(y);
var z=window.alert ("Enter how many Audio Cassettes you want to buy");
window.alert(z);
4

4 回答 4

5

从它的声音来看,以下满足您的要求:

var a, d, t;

while ( ! a ) a = prompt( "Which Artist?" );
while ( ! d ) d = prompt( "How many DVDs?" );
while ( ! t ) t = prompt( "How many tapes?" );

alert( "You want " + t + " Tapes, and " + d + " DVDs, of " + a + "." );

让我们分解它,以便了解发生了什么:

var a, d, t;

在第一行,我声明了我计划在下面的代码中使用的各种变量。这是一种常见的做法,如果您想保持干净和可管理的代码,这将是一个好习惯。

while ( ! a )

while 循环是一个循环,将反复运行,直到满足条件。在这个例子中,只要我们没有 for 的值,我们就告诉循环运行a。接下来是我们尝试a从用户那里收集价值:

while ( ! a ) a = prompt( "Which Artist?" );

每次 while 循环运行时,我们都会提示用户回答问题。我们接受他们的答案,并将其分配给a. 如果他们什么也没输入,我们的 while 循环会再次运行,再次提示他们。此时您可能会理解接下来的两个 while 循环。

最后是我们的警报,它收集各种值并将它们显示给用户:

alert( 'Artist ' + a );

这也提供了字符串连接的示例,或将两个字符串连接在一起。我们有一个存储在里面的值a,以及一个明确写为文本的值。我们使用+操作符将两者连接在一起,就像将绳子的两端用胶水绑在一起一样。随着我们添加更多字符串和更多变量,我们+越来越多地使用运算符:

alert( "You want " + t + " Tapes, and " + d + " DVDs, of " + a + "." );

运行此代码时td、 和a将全部替换为最终用户插入的实际值。

请注意,这是您的作业所需的非常基本的实现。一个真正的解决方案是测试输入的类型以确保它是预期的格式。例如,当询问用户想要多少 DVD 时,您可能希望将“可接受”的答案限制为仅整数。

祝你好运!

于 2012-04-19T02:39:48.277 回答
2

在值对象/数组上使用循环。也许使用第二个(嵌套)循环再次提示,直到输入一个值。

于 2012-04-18T18:09:50.143 回答
2

使用多个函数,以便在单击第一个提示时调用另一个函数,该函数处理另一个提示,您可以在其中单独保存变量值。递归地使用它。

于 2012-04-18T18:26:51.967 回答
0

提示很简单,这就是我使用它的方式:

var value = prompt( message );
于 2020-08-16T05:51:07.857 回答