Загрузка...

Validation of the entered card number

Thread in Frontend created by akylbek2000 Apr 28, 2020. 222 views

  1. akylbek2000
    akylbek2000 Topic starter Apr 28, 2020 34 Nov 14, 2018
    Пример функции для валидации карты по алгоритму Луна.
    Например если вы хотите сообщить сразу человеку если он опечатался при введении карты ;)

    JavaScript
    //Возвращаем true елси карта норм, false если не норм
    function validСard(value) {
    //Не принимаем пустую строку
    if(value.length < 1) return false;
    //Принимаем только цифры
    if (/[^0-9-\s]+/.test(value)) return false;
    //проверка по алгоритму Луна
    var nCheck = 0, nDigit = 0, bEven = false;
    value = value.replace(/\D/g, "");

    for (var n = value.length - 1; n >= 0; n--) {
    var cDigit = value.charAt(n),
    nDigit = parseInt(cDigit, 10);

    if (bEven) {
    if ((nDigit *= 2) > 9) nDigit -= 9;
    }

    nCheck += nDigit;
    bEven = !bEven;
    }

    return (nCheck % 10) == 0;
    }
    Демо пример: Клик
     
  2. Mandtory
    Mandtory Apr 28, 2020 Banned 338 Mar 1, 2020
    Ввожу не похожую на настоящую карту пишет что карта верная
     
    1. akylbek2000 Topic starter
      Mandtory, надо будет отредактировать немножко
Loading...
Top