Показать сообщение отдельно
  #1 (permalink)  
Старый 26.08.2015, 13:22
Аспирант
Отправить личное сообщение для Валерий1996 Посмотреть профиль Найти все сообщения от Валерий1996
 
Регистрация: 11.06.2015
Сообщений: 74

Ошибка в коде при проверке инпута
Подскажите где может быть ошибка в коде ? При проверке на количество символов и соотвецтвие мобильным операторам , кнопка сабминт должна быть блокирована , но этого не происходит . Подскажыте может чего незаметил?

вот код :
<form action="" autocomplete="off">
<input  id="phone" type="text" autocomplete="off" class="telephone"   value="Введите Ваш номер" name="input" > 
<div class="nambers">
<button id="0" class="0 btn">0</button>
<button id="1" class="1 btn">1</button>
<button id="2" class="2 btn">2</button>
<button id="3" class="3 btn">3</button>
<button id="4" class="4 btn">4</button>
<button id="5" class="5 btn">5</button>
<button id="6" class="6 btn">6</button>
<button id="7" class="7 btn">7</button>
<button id="8" class="8 btn">8</button>
<button id="9" class="9 btn">9</button>
<button id="10"class="l0 btn">10</button>
<button id="enter" class="entr btn"   type="submit">Enter</button>
<button id="backspace"  class="backspace btn">backspace</button>
</form>



(function($){


var checkMobileOperator = function(){



//var operators  = window.operators;
var operators = [{code:'909', 'name':'Beeline'}, {code: '921', name: 'MTS'}];

console.log(operators[0])

this.check = function(value){


value = value.replace(/(?:^(7|\+7|8))*(?:\(|\))/g,'');


if (value.length == 9) {


var code = value.substr(0,3);

    for (var i = 0, len =  operators.length; i < len; i++) {
        if ( operators[i].code === code)
            return operators[i].name; 
    }

    return null; 
}

}

}

var CheckMobileOperator = new checkMobileOperator();

var form = $('form'),
input = $('#phone', form),
submit = form.find('#enter');
submit.prop('disabled','disabled');

console.log(input)

input.on('keydown', function(e){
	
if (!((which >= 48 && which <= 57) || which == 13)){
 e.preventDefault();
 return false;
 
}



!!checkMobileOperator.check(input.val()) && submit.removeprop('disabled');


});
})(jQuery)

Последний раз редактировалось Валерий1996, 26.08.2015 в 14:09.
Ответить с цитированием