JQuery проверить числовые после вставки - PullRequest
0 голосов
/ 06 ноября 2010

Я знаю, как проверить поле для числовых значений, но как вы можете проверить поле, если в поле были вставлены недопустимые символы.Часто у нас есть числовое поле, а затем кнопка действия, и числовое поле может не вызывать событие размытия при нажатии кнопки действия.Как вы можете форсировать (пере) проверку в этом случае?Вы делаете это снова в случае нажатия кнопки действия, или там есть более элегантное решение?

Ответы [ 2 ]

3 голосов
/ 06 ноября 2010

Не совсем отвечая на ваш вопрос о вставке, но предлагая альтернативу: вы можете подписаться на обработчик submit формы и выполнить там проверку. Еще более элегантным является использование плагина проверки jquery , который будет выполнять работу по подписке для вас, так что вам нужно только определить правила и сообщения об ошибках:

$(function() {
    $('#myform').validate({
        rules: {
            someFieldName: {
                required: true,
                number: true
            }
        },
        messages: {
            someFieldName: {
                required: 'please enter a value',
                number: 'please enter a valid number'
            }
        }
    });
});
2 голосов
/ 09 марта 2017

Я использовал этот вид проверки .... проверяет вставленный текст и, если он содержит алфавиты, показывает ошибку для пользователя, а затем снимает флажок после задержки, чтобы пользователь мог проверить текст и внести соответствующие изменения.

$('#txtbox').on('paste', function (e) {
    var $this = $(this);
    setTimeout(function (e) {
        if (($this.val()).match(/[^0-9]/g))
        {
            $("#errormsg").html("Only Numerical Characters allowed").show().delay(2500).fadeOut("slow");                       
            setTimeout(function (e) {
                $this.val(null);
            },2500);
        }                   
    }, 5);
});
...