На днях столкнулся с задачей по оповещении пользователя при вводе пароля о том, что он вводит символы в верхнем регистре. Забыл отключить «Caps Lock», или так задумано, для меня не важно — мое дело напомнить ему об этом.
В ходе написание скрипта были учтены непереводимые в регистр символы, цифры, пробел. При определении ввода верхнего регистра проверяю последний введенный символ.
Функция, которая принимает объект и уже на типу объекта, берет значение для проверки:
Функция принимает String значение для проверки:
И под конец источник вызова функции. Немного кода, в котором при обходе полей проверяются их тип на «password» и при вводе текста осуществляется проверка на вводимую информацию.
В ходе написание скрипта были учтены непереводимые в регистр символы, цифры, пробел. При определении ввода верхнего регистра проверяю последний введенный символ.
Функция, которая принимает объект и уже на типу объекта, берет значение для проверки:
/**
* return boolean
* true - using Caps Lock
* false - not using Caps Lock
**/
function checkingUp(_obj){
var symbol = '';
var type = _obj[0].tagName;
switch(type)
{
case "INPUT" :
symbol = String(_obj.val());
break;
}
if(symbol == ''){
return false;
}
symbol = symbol.substr(symbol.length - 1, (symbol.length));
if($.isNumeric(symbol)){
return false;
}
var newSymbol = symbol.toLowerCase();
if(symbol != newSymbol){
return true;
}
return false;
}
Функция принимает String значение для проверки:
function checkingUp(_obj){
var symbol =String( _obj);
if(symbol == ''){
return false;
}
symbol = symbol.substr(symbol.length - 1, (symbol.length));
if($.isNumeric(symbol)){
return false;
}
var newSymbol = symbol.toLowerCase();
if(symbol != newSymbol){
return true;
}
return false;
}
И под конец источник вызова функции. Немного кода, в котором при обходе полей проверяются их тип на «password» и при вводе текста осуществляется проверка на вводимую информацию.
$("#login-form input[type=password]").each(function(){
// после поля ввода пароля расположен span с логотипом капчи, скрытый стилями css
var iconCapsLock = $(this).parent().find('.capslock');
$(this).bind('keyup', function(){
if(checkingUp($(this))){
iconCapsLock.show();
}
else{
iconCapsLock.hide();
}
});
$(this).bind('blur', function(){
iconCapsLock.hide();
});
});