Я пытаюсь дать текстовому полю двойную функцию. Поэтому, если вы введете в него, скажем, 12345, он найдет соответствующие данные. Но если вы вводите адрес электронной почты или, по существу, что-нибудь в формате XXX@XXX.XXX, я хочу, чтобы поле пароля и кнопка появлялись. Я пытался использовать регулярные выражения, но по какой-то причине это не работает, и все распознается как электронная почта, поэтому даже 12345 открывает вход в систему вещей. Вы можете помочь мне? Я пытался понять суть фрагментов.
function imgMain() {
var iDCode = document.getElementById("IDQuery").value;
var mail = /^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/;
if (iDCode = mail) {
console.log("this is a mail");
document.getElementById("passwordDiv").style.display = "block";
document.getElementById("loginbuttonDiv").style.display = "block";
document.getElementById("SeeSlide").style.display = "none";
} else {
console.log("this is not a mail")
}
}
<div id="QueryField">
<input type="text" id="IDQuery" placeholder="ID Kode">
<div style="display: none" id=passwordDiv><input type="password" id="passwordfield"><br></div>
<div style="display: none" id=loginbuttonDiv><button id="login" onclick="login()">log ind</button><br></div>
<button id="SeeSlide" onclick="imgMain()">Se Slide</button><br>
<br><br><br><br>
</div>