Javascript条件语句

时间:2014-09-21 11:50:05

标签: javascript conditional-statements

我想在我的JavaScript代码中添加一个条件,如果我在文本框中写出正确的答案,它将转到下一页。

例如:问题是:"日本的资本是什么?"如果我写东京,它将转到一个新的页面,但如果写错了答案它只会显示警报盒子留言。

<html>
<head>
    <script type="text/javascript">
        function nameValidate() {
            valid = true;
            if (document.getElementById('name').value == "") {
                alert("Please enter the right answer");
                valid = false;
            }
            return valid;
        }
    </script>

    <title>Crack the code</title>
</head>
<body text="#666633" bgcolor="#cccc99">
    <div align="center">
        <p class="text">
            <h3>What is the Capital of Japan</h3>
        </p>

        <table>
            <tr>
                <td class="label"></td>
                <form name="Answer" action="http://news.google.com/" onsubmit="return nameValidate();">
                    <input type="text" id="name" />
                    </td>
                    <br />
                    <br />
                    <input type="Submit" value="submit" />
                </form>
            </tr>
            <tr>
                <td height="8"></td>
            </tr>
        </table>
    </div>
</body>
</html>

2 个答案:

答案 0 :(得分:0)

您的if条件只会检查您的输入文本是否为空。如果你想确保答案是东京,你可以使用:

<script type="text/javascript">
    function nameValidate(){
       var myInput = document.getElementById('name').value.toLowerCase();
       var valid = true;
       if(myInput != "tokyo"){
          alert("Please enter the right answer");
          valid = false;
       }
     return valid;
   }
</script>

我使用toLowerCase功能确保接受任何可能的答案。

答案 1 :(得分:0)

您的代码几乎是正确的,除非用户输入的内容与您预期的不同。你没有注意到任何东西,因为你的表单提交到谷歌这也是谷歌以某种方式阻止!所以这会让你错了!请更改您的表单提交,如

action="http://naimrajib.blogspot.com/"

同样更改您的代码:

function nameValidate()
{
    var answer = {japan: 'tokyo', bangladesh: 'dhaka'}
    var valid = true;
    var input_value = document.getElementById('name').value.toLowerCase();

   if (input_value == null  || input_value == "") {
       alert("Please enter the right answer");
       valid = false;
   }
   else if(input_value == answer.japan){
       valid = true;
  }
  else
       valid = false;

  alert(valid);
return valid;
}

要观看演示,请访问此链接:http://jsfiddle.net/naimrajib/5Lzt7opg/