Я новый разработчик, и я на самом деле пытаюсь создать пароль, который проверяет при наборе, есть ли хорошие символы.
Для этого я сделал RegExp для прописных букв, цифр и специальных символов.
Прописные буквы и цифры работают хорошо, но я не знаю, почему специальные символы не будут работать.
HTML
<input type="text" class="input">
<p class="maj">uppercase</p>
<p class="number">number</p>
<p class="carspe">special chracters</p>
<p class="carac">min 8 characters</p>
CSS
.maj{
color:red;
}
.number{
color:red;
}
.carac{
color:red;
}
.carspe {
color:red;
}
JS
var input = document.querySelector('.input');
var maj = document.querySelector('.maj');
var number = document.querySelector('.number');
var carspe = document.querySelector('.carspe');
var carac = document.querySelector('.carac');
var uppercase = /[A-Z]/g;
var numbers = /[0-9]/g;
var carspe = /[!@#$%^&*(),.?":{}|<>]/g;
input.addEventListener('input', function() {
if (input.value.match(uppercase)) {
maj.style.color = 'green';
} else {
maj.style.color = 'red';
}
if (input.value.match(numbers)) {
number.style.color = 'green';
} else {
number.style.color = 'red';
}
if (input.value.length >= 8) {
carac.style.color = 'green';
} else {
carac.style.color = 'red';
}
if (input.value.match(carspe)) {
carspe.style.color = 'green';
} else {
carspe.style.color = 'red';
}
})
Спасибо, что нашли время изучить мою проблему и за помощь в будущем <3 </p>