Błąd przy wpisywaniu zmiennych.

0

Witam.
Potrzebuję aby w okienko np AX czy AL można było wpisać liczby szesnastkowe. Próbuje najpierw sprawdzić inputa czy w nim znajdują się takie liczby. i tu pojawia się błąd ponieważ np. po wpisaniu "FT" wyskakuje mi że jest to liczba szesnastkowa.. Jakieś pomysły??

function hexa()
{
    let ah = document.getElementById("ah").value;
    let al = document.getElementById("al").value;
    let bh = document.getElementById("bh").value;
    let bl = document.getElementById("bl").value;
    let ch = document.getElementById("ch").value;
    let cl = document.getElementById("cl").value;
    let dh = document.getElementById("dh").value;!
    let dl = document.getElementById("dl").value;
    
 const letters =/[a-f]/;
 const numbers =/[0-9]/;

 if(ah.match(letters) || ah.match(numbers))
 {
     document.getElementById("text").innerHTML="Prawidłowo"
 }
 else
 {
    document.getElementById("text").innerHTML="emmm"
 }
}

![](https://4programmers.net/uploads/107098/T2kj8JYmww7Mp9hH4y4USyM2bErXtlqdrqvrRrmR.png)
1

Bo sprawdzasz tylko czy string zawiera dopasowanie do regexpa. Spróbuj: /^[a-f0-9]+$/i.test('ff')

^ - początek stringa
$ - koniec
i - ignoruj wielkość liter

1 użytkowników online, w tym zalogowanych: 0, gości: 1