проверка значения поля ввода из базового массива, который присутствует или отсутствует в массиве - PullRequest
1 голос
/ 07 апреля 2020

Я хочу что-то вроде этого, чтобы у меня был список некоторых почтовых индексов Великобритании, и я хочу сохранить их в массиве, и когда пользователь вводит почтовый индекс из массива, он показывает правильно, и если его нет в массиве он должен отображаться неправильно, в основном я хочу сделать что-то для проверки почтового кода. я знаю, что код недействителен, это просто демо, потому что я очень слаб с массивами, поэтому, пожалуйста, вы можете мне помочь. спасибо

<input type="text" id="test">
<input type="button" value="click" onclick="z()"><span id="err"></span>

<script>
function z()
{
var a=document.getElementById("test");
if((a.value=="an apple")||(a.value=="SW6"))
{
document.getElementById('err').innerHTML= 'correct';
}
else
{
document.getElementById('err').innerHTML= 'wrong';

}

}
</script>

1 Ответ

0 голосов
/ 07 апреля 2020

Вы можете сделать что-то вроде следующего:

const postcodes = ["SW6"];

// This will compare the strings and return true
//if they have the same base letters
let ciEquals = (a, b) => {
  let opts = { sensitivity: "base" };
  return a.localeCompare(b, undefined, opts) === 0;
};

let isValid = value => {
  for (let postcode of postcodes) {
    if (ciEquals(postcode, value)) return true;
  }
  return false;
};

document.getElementById("button").addEventListener("click", () => {
  var value = document.getElementById("test").value;
  if (!value) return;
  document.getElementById("err").innerHTML = isValid(value) ?
    "correct" :
    "wrong";
});
<input type="text" id="test" />
<input type="button" id="button" value="click" />
<span id="err"></span>

Если вы наберете SW6, вы увидите «правильный»

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...