В настоящее время я работаю над сценарием, который выполняет задачу аутентификации один раз для продуктов с фабричным кодом, чтобы избежать поддельных продуктов.
Моя конечная цель:
- проверить значение пользовательского ввода, если оно соответствует спискуисходных кодов.
- если ввод проверяется впервые и соответствует одному из перенаправлений исходного списка кодов на определенную веб-страницу.
- если ввод пользователя проверяется во второй раз и совпадает доодин из исходных списков проверенных кодов отображает абзац.
- если вход проверен и НЕ соответствует, показывает ФАКЕ.
Вот что я сейчас пишу:
$(document).ready(function(){
var originalCodes = ['123','1234','12345'];
var userInputCode = document.getElementById('userInputCode');
$('form').submit(function(){
var checkedCodes = [];
var i;
for(i=0; i<originalCodes.length; i++){
if (userInputCode.value === originalCodes[i]){
window.location.href = "SomeLinkHere";
checkedCodes.push(i);
if (userInputCode.value === checkedCodes[i]){
$('checked').css('display', 'block');
}
}else{
$('.fake').css('display', 'block');
}
return false;
}
});
});
.fake {display:none;}
.checked{display:none;}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<form method="post">
<p>Product Code: <input type="text" id="userInputCode"></p>
<input type="submit" value="Check" id="submit">
</form>
<h2 class="fake">Your've a Fake product.</h2>
<h2 class="checked">This code was previously authenticated.</h2>
Я столкнулся с проблемой в цикле массива originalCodes, если оператор if не может проверить все значения.
У кого-нибудь естьидея? Заранее спасибо.