0

「犬の足は何本ありますか?」(その部分をまだ追加していないことはわかっています) のような単純な質問を 3 つの異なる結果で行うフォームを作成しようとしています。

  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の代わりに2つのステートメントを使用できます。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

else ifURLを取得するには、 :を追加する必要があります。

<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 に答える