0

我正在尝试创建一个表单来提出一个简单的问题,例如“一只狗有几条腿?”(我知道我还没有添加那部分)具有三种不同的结果。

  1. 输入字段中没有任何内容“糟糕!您还没有回答线索!”
  2. 输入字段中的错误答案“抱歉错误答案”
  3. 输入中的正确答案,然后将显示下一个问题的 URL。“干得好!转到下一个问题” www.url.com

这是我到目前为止所拥有的,我无法查看我对“下一页”的回答是否将我发送到一个 url

<pre>
<html>
<head>
<title>Form</title>
<script type="text/javascript">
function validateForm()
{
var x=document.forms["myForm"]["fname"].value;
if (x===null || x==="")
 {
  alert("Oops! You haven't answered the clue!");
  return false;
  } else (x==="next page")
   window.location="www.facebook.com"
}
</script>

</script>
</head>
<body>
<form name="myForm" method="post">
Answer: <input type="text" name="fname"><input type="submit" value="Submit">
</form>

</html>
</pre>
4

3 回答 3

0

else不带条件。您需要使用else if,如下所示:

if (x===null || x==="")
{
  alert("Oops! You haven't answered the clue!");
  return false;
} else if (x==="next page") {
   window.location="www.facebook.com"
}

值得注意的是,您需要http://在该 URL 前面添加。此外,由于您在return false出现未回答的线索时退出函数,您实际上可以只使用两个if语句而不是else if

if (x===null || x==="")
{
  alert("Oops! You haven't answered the clue!");
  return false;
}

if (x==="next page")
{
   window.location="http://www.facebook.com";
}
于 2012-05-31T03:41:13.533 回答
0

首先,您没有validateForm在表单提交时调用您的函数。而且您的代码中有一些语法问题。

您的 if 语句应该是...

if (x===null || x==="") {
    alert("Oops! You haven't answered the clue!");
    return false;
} else if (x==="next page") {
    window.location="www.facebook.com";
}

请参阅下面具有不同结果的代码的编辑版本...

<script type="text/javascript">
function validateForm() {
    var x=document.forms["myForm"]["fname"].value;
    if (x===null || x==="") {
        alert("Oops! You haven't answered the clue!");
        return false;
    } else if (x != "4") {
        alert("Sorry wrong answer!");
        return false;
    } else if (x==="4") {
        alert("Good Job! Go to the next question");
        window.location="www.facebook.com"
    }

return false;
}
</script>
</head>
<body>
<form name="myForm" method="post" onSubmit="return validateForm()">
Answer: <input type="text" name="fname"><input type="submit" value="Submit">
</form>
于 2012-05-31T03:43:01.793 回答
0

要访问 url,您需要添加else if

<pre>
<html>
<head>
<title>Form</title>
</head>
<body>
<form name="myForm" method="post">
Answer: <input type="text" name="fname"><input type="submit" value="Submit">
</form>
<script type="text/javascript">
function validateForm() {
    var x = document.forms["myForm"]["fname"].value;
    if (x === null || x ==="") {
        alert("Oops! You haven't answered the clue!");
    } else if (x === "next page") {
        alert("Good Job! Go to the next question");
        document.forms["myForm"].innerHTML += "<a href=\"http://www.facebook.com\">Next Question</a>";
    } else {
        alert("Sorry wrong answer");
    }
    return false;
}
document.forms["myForm"].onsubmit = validateForm;
</script>
</html>
</pre>
于 2012-05-31T03:48:59.297 回答