Полевая проверка регулярного выражения в jQuery

74
задан Paulo Scardine 18 January 2012 в 16:14
поделиться

5 ответов

Я полагаю, что это делает это:

http://bassistance.de/jquery-plugins/jquery-plugin-validation/

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

26
ответ дан Daniel Schaffer 24 November 2019 в 11:55
поделиться

Если Вы хотели искать некоторые элементы на основе regex, можно использовать эти filter функция. Например, скажите, что Вы хотели удостовериться, что во всех полях ввода, пользователь только ввел номера, поэтому давайте найдем все исходные данные, которые не соответствуют и выделяют их.

$("input:text")
    .filter(function() {
        return this.value.match(/[^\d]/);
    })
    .addClass("inputError")
;

, Конечно, если это было просто что-то вроде этого, Вы могли бы использовать плагин проверки формы, но этот метод мог быть применен к любому виду элементов, которые Вы любите. Другой пример для показа то, что я имею в виду: Найдите все элементы чей id соответствия /[a-z]+_\d+/

$("[id]").filter(function() {
    return this.id.match(/[a-z]+_\d+/);
});
83
ответ дан nickf 24 November 2019 в 11:55
поделиться

Если Вы не ищете что-то определенное, можно уже сделать соответствие Регулярного выражения с помощью обычного JavaScript со строками.

, Например, можно сделать соответствие использованию строки чем-то вроде этого...

var phrase = "This is a phrase";
phrase = phrase.replace(/is/i, "is not");
alert(phrase);

там что-то, что Вы ищете кроме просто Регулярного выражения, соответствующего в целом?

26
ответ дан Hugoware 24 November 2019 в 11:55
поделиться

Я использую jQuery и JavaScript, и у меня все работает:

var rege = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
if(rege.test($('#uemail').val())){ //do something }
30
ответ дан 24 November 2019 в 11:55
поделиться

Мой код:

$("input.numeric").keypress(function(e) { /* pour les champs qui ne prennent que du numeric en entrée */          
            var key = e.charCode || e.keyCode || 0;                     
            var keychar = String.fromCharCode(key);
            /*alert("keychar:"+keychar + " \n charCode:" + e.charCode + " \n key:" +key);*/
            if (  ((key == 8 || key == 9 || key == 46 || key == 35 || key == 36 || (key >= 37 && key <= 40)) && e.charCode==0) /* backspace, end, begin, top, bottom, right, left, del, tab */
                    || (key >= 48 && key <= 57) ) { /* 0-9 */
                return;
            } else {
                e.preventDefault();
            }
        });
3
ответ дан 24 November 2019 в 11:55
поделиться
Другие вопросы по тегам:

Похожие вопросы: