Javascript根据答案输出不同的消息



我正在尝试进行简单的邮政编码搜索,用户在其中输入他们的邮政编码以查看他们是否有资格获得支持。我希望一旦他们按下 Enter 它就会显示结果,目前我将其作为键。

由于它是邮政编码,因此它需要搜索空格和大写和小写。我希望有人能帮忙。

您可以在此处查看代码:https://jsfiddle.net/esdrxq0n/3/

.HTML

<h1>Enter your postcode to see if you qualify</h1>
<input type="text" id="postcode" value="" />
<div id="container" style="display:none;">Our services support your postcode</div>
<div id="sorry" style="display:none;">Sorry we do not operate in your area. Signup to be notified when we do.</div>

.JAVA

$("#postcode").bind('keyup', function (e) {
    if (e.which >= 97 && e.which <= 122) {
        var newKey = e.which - 32;
        // I have tried setting those
        e.keyCode = newKey;
        e.charCode = newKey;
    }
    $("#postcode").val(($("#postcode").val()).toUpperCase());
});
var validcode = ('SS94QL','SS9 4QL','SS143JA','SS14 3JA');
    $("#postcode").keyup(function () {
        var code = $(this).val();
        if (code === validcode) {
            $("#container").show();
            $("#sorry").hide();
        } else {
            $("#container").hide();
            $("#sorry").show();
        }
    });

试试这个,主要是将预定义的代码放在数组中,然后可以将类型字符串转换为大写,
看看数组中是否存在

$("#postcode").bind('keyup', function (e) {
    if (e.which >= 97 && e.which <= 122) {
        var newKey = e.which - 32;
        // I have tried setting those
        e.keyCode = newKey;
        e.charCode = newKey;
    }
    $("#postcode").val(($("#postcode").val()).toUpperCase());
});
var validcode = ['SS94QL','SS9 4QL','SS143JA','SS14 3JA'];
    $("#postcode").keyup(function () {
        var code = $(this).val().toUpperCase();
        if (validcode.indexOf(code) > -1 ) {
            $("#container").show();
            $("#sorry").hide();
        } else {
            $("#container").hide();
            $("#sorry").show();
        }
    });
#postcode {
  width:50%;
  height:40px;
  background-color:#ffffff;
  margin:0px auto;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<h1>Enter your postcode to see if you qualify</h1>
<input type="text" id="postcode" value="" />
<div id="container" style="display:none;">Our services support your postcode</div>
<div id="sorry" style="display:none;">Sorry we do not operate in your area. Signup to be notified when we do.</div>

你的validCode应该是一个数组,然后你可以使用 indexOf 函数来查找输入的代码是否存在于数组中

var validcode = ['SS94QL','SS9 4QL','SS143JA','SS14 3JA'];
    $("#postcode").keyup(function () {
        var code = $(this).val();
        if (validcode.indexOf(code) > -1) {
            $("#container").show();
            $("#sorry").hide();
        } else {
            $("#container").hide();
            $("#sorry").show();
        }
    });

吉斯菲德尔

最新更新