I am working on a page where the user input is compared against an array. When the user enters a value in the form input, it then filters the array for an exact match and displays the correct item. My problem is that if a users enters a value that is not included in the array, it does not display an error message. Please take a look at the code below. The problem lies within the last if statement that is looking for parts of a string like "GT" "MT" etc. I don't think its necessary to include everything because I think just by looking at my JavaScript someone will know what the issue is. Hope someone can help! Thanks!
//load gif on click
$(function(){
//grab gif image and assign to variable
var image = new Image();
image.src='https://cento.com/images/gif/EARTH.gif';
//store can code values in array
var canCode = [
{code: "7283SCBSGT", codeOZ: 5, species: "tonno", country: "Maldives", boat: "Dhonis"},
{code: "7283SC1SGT", codeOZ: 5, species: "tonno", country: "Maldives", boat: "Dhonis"},
{code: "7283SC2SGT", codeOZ: 5, species: "tonno", country: "Maldives", boat: "Dhonis"},
{code: "7283SC3SGT", codeOZ: 5, species: "tonno", country: "Maldives", boat: "Dhonis"},
{code: "7283SC4SGT", codeOZ: 5, species: "tonno", country: "Maldives", boat: "Dhonis"},
{code: "7283SCASGT", codeOZ: 5, species: "tonno", country: "Maldives", boat: "Dhonis"},
{code: "7338SC3SGT", codeOZ: 5, species: "tonno", country: "Maldives", boat: "Dhonis"},
{code: "7338SC4SGT", codeOZ: 5, species: "tonno", country: "Maldives", boat: "Dhonis"},
{code: "7338SCASGT", codeOZ: 5, species: "tonno", country: "Maldives", boat: "Dhonis"},
{code: "7338SCBSGT", codeOZ: 5, species: "tonno", country: "Maldives", boat: "Dhonis"},
{code: "7338SC1SGT", codeOZ: 5, species: "tonno", country: "Maldives", boat: "Dhonis"},
{code: "7338SC2SGT", codeOZ: 5, species: "tonno", country: "Maldives", boat: "Dhonis"},
{code: "7355SEASGT", codeOZ: 5, species: "tonno", country: "Maldives", boat: "Dhonis"},
{code: "7355SEBSGT", codeOZ: 5, species: "tonno", country: "Maldives", boat: "Dhonis"},
{code: "7257S93S2T", codeOZ: 3, species: "tonno", country: "Maldives", boat: "Dhonis"},
{code: "7257S9AS2T", codeOZ: 3, species: "tonno", country: "Maldives", boat: "Dhonis"},
{code: "7257S9BS2T", codeOZ: 3, species: "tonno", country: "Maldives", boat: "Dhonis"},
{code: "7027S93S2T", codeOZ: 3, species: "tonno", country: "Maldives", boat: "Dhonis"},
{code: "7339S91SGT", codeOZ: 3, species: "tonno", country: "Maldives", boat: "Dhonis"},
{code: "7339S92SGT", codeOZ: 3, species: "tonno", country: "Maldives", boat: "Dhonis"},
{code: "7339S93SGT", codeOZ: 3, species: "tonno", country: "Maldives", boat: "Dhonis"},
{code: "7339S94SGT", codeOZ: 3, species: "tonno", country: "Maldives", boat: "Dhonis"},
{code: "7347S9ASGT", codeOZ: 3, species: "tonno", country: "Maldives", boat: "Dhonis"},
{code: "61082SD1SMT", codeOZ: 5, species: "albacore"}
];
//refresh map on button click
$('#canCode').click(function(e){
//assign user input to variable
var usersInput=$("#can").val().toUpperCase();
//filter out the array against user input
let chosen = canCode.filter(can => can.code===usersInput);
//assign data to variables
var code = chosen[0].code.toUpperCase();
var codeOZ = chosen[0].codeOZ;
var species = chosen[0].species;
var country = chosen[0].country;
var boat = chosen[0].boat;
//prevent default behavior
e.preventDefault();
//compare user input against array
if(code === usersInput) {
console.log(code);
console.log(codeOZ);
console.log(species);
console.log(country);
console.log(boat);
//search for tuna identifier and show correct information
if (usersInput.includes("GT") || usersInput.includes("2T")) {
console.log("tonno");
$('.selectedTunaCan').show();
$('.selectedAlbacoreTunaCan').hide();
$('.fishSpeciesSkipjack').show();
$('.fishSpeciesAlbacore').hide();
} else if (usersInput.includes("MT")) {
console.log("albacore");
$('.selectedTunaCan').hide();
$('.selectedAlbacoreTunaCan').show();
$('.fishSpeciesSkipjack').hide();
$('.fishSpeciesAlbacore').show();
} else if (usersInput !== code) {
console.log("invalid code entered");
}
}
});
});