Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Проверка введенных символов в форму (https://javascript.ru/forum/dom-window/43814-proverka-vvedennykh-simvolov-v-formu.html)

titan1993 22.12.2013 13:40

Проверка введенных символов в форму
 
$('#form').find("input[type=text], textarea").on('keydown', function(e){
if(e.keyCode==8 || e.keyCode==9 || e.keyCode==13 || e.keyCode==16 || e.keyCode==17 || e.keyCode==32 || e.keyCode==37 || e.keyCode==39 || e.keyCode==46 || e.keyCode==189 || (e.keyCode>=65&&e.keyCode<=122)){return:true;}else {
alert('Недопустимый символ');
var t = $(this).val();
t = t.substring(0, t.length - 1);
$(this).val(t);

}
});

Как условие в if() записать короче?

danik.js 22.12.2013 14:00

Цитата:

Сообщение от titan1993
{return:true;}

Эт че такое еще?
Цитата:

Сообщение от titan1993
var t = $(this).val();

Диагностирую признаки заразной болезни - jQuery головного мозга.
таблетка: this.value

Пожалуйста, отформатируйте свой код!

Для этого его можно заключить в специальные теги: js/css/html и т.п., например:
[js]
... ваш код...
[/js]


О том, как вставить в сообщение исполняемый javascript и html-код, а также о дополнительных возможностях форматирования - читайте http://javascript.ru/formatting.

danik.js 22.12.2013 16:16

$('#form').find("input[type=text], textarea").on('keydown', function(e){
    var allowedKeys = [8, 9, 13, 16, 17, 32, 37, 39, 46, 189];
    var key = e.keyCode;
    if ($.inArray(key, allowedKeys) > -1 || (key >= 65 && key <= 122)) {
        return true;
    } else {
        alert('Недопустимый символ');
        this.value = this.value.slice(0, -1);
    }
});


Часовой пояс GMT +3, время: 03:23.