我正在尝试进行简单的邮政编码搜索,用户在其中输入他们的邮政编码以查看他们是否有资格获得支持。我希望一旦他们按下 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();
}
});
吉斯菲德尔