快速更新!
我可能已经修复了它。现在代码如下所示:
<script type="text/javascript">
function rangeAnswers() {
var answer = prompt ("How much do you like pizza?")
if (answer > 0 )
confirm("That's a bit low")
window.location="http://www.continue.com";
if (answer > 20 )
confirm("Quite a decent score, isn't it?")
window.location="http://www.continue.com";
}
</script>
而且它有效。在这一点上,我认为如果我将其他 if 放在 <0 或 > 100 的末尾,我可以提示错误消息并且无需链接到那两个小 if 中的页面,我是否留在页面上,对吗?
首先让我告诉你我刚开始使用 js,所以这可能有点愚蠢。
这是我需要做的。我有一个普通的 HTML 链接,它带有一个在单击时调用的函数,它会询问用户类似“你有多喜欢比萨饼(0 100)?”之类的问题。
用户输入一个数字,我想要不同的答案,这仍然会根据他写的数字将您定向到链接(因此没有控件将用户发回此处)。
我想要 0-25、26-50、51-75、71-100 处的四个主要断点 ELSE(更低或更高的值)它只是提醒(“您指定的数字无效”)并留在页面中用户可以再次点击并输入正确的值(然后没什么特别的)。
当他插入正确的值时,我想要的是 0-25“你不太喜欢它”、26-50“不好但不坏”等等 + 链接。
这是我的 HTML a:
<h2><a href="javascript:rangeAnswers();">Click here to tell us how much you like pizza and continue!</a></h2>
这是未加载的 Javascript 函数的基础!我尝试了一个简单的 Ok/cancel 提示,它起作用了,但我仍然无法理解 if/else 语句的逻辑。 这是旧代码,我重新粘贴了正确的代码! 函数范围答案(){ var answer = prompt(“你有多喜欢披萨?”) 如果(答案)> 0
{
alert= "That's a bit low"
window.location="http://www.continue.com";
} else
if (answer) > 20
{
alert= "You don't like it nor hate it"
window.location="http://www.continue.com";
} else
}
</script>
我想现在就这些了,我在等待回复的同时仍在努力解决这个问题,但现在已经有一段时间了,我无法得到我所缺少的东西。
这是更新后的工作代码
虽然它不会加载我的警报/提示。
function rangeAnswers() {
var answer = prompt ("How much do you like pizza?")
if (answer > 0 )
alert= "Nice!"
window.location="http://www.continue.com";
if (answer > 20 )
alert= "Nice!"
window.location="http://www.continue.com";
}
最佳答案
t 没有加载,因为你有一个尾随的 else,并且你在答案周围有括号,但不是在整个 bool 值周围。尝试:
<script type="text/javascript">
function rangeAnswers(){
var answer = prompt ("How much do you like pizza?");
if (answer > 0) {
alert("Nice!");
window.location.href="http://www.continue.com";
}else if (answer > 20){
alert("Nice!");
window.location.href="http://www.continue.com";
}
}
</script>
已编辑 - 完整版:
<script type="text/javascript">
function rangeAnswers(){
var answer,
bad=false;
while(true){
answer = prompt('How much do you like pizza?');
if(isNaN(answer)){
bad=true;
}else{
bad=false;
answer = parseInt(answer,10);
if(answer>100 || answer<0){
bad=true;
}else if(answer===100){
alert('Wow, you REALLY love pizza!');
}else if (answer >= 75) {
alert('75-99!');
}else if (answer >= 50){
alert('50-74');
}else if (answer >= 25){
alert('25-49');
}else{
alert('0-24');
}
if(!bad){
window.location.href="http://www.continue.com";
return;
}
}
if(bad){
alert('I need a number between 0 and 100!');
}
}
}
</script>
关于Javascript:要求输入一个数值,给出不同的答案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17878900/