У меня есть текстовое поле ввода, которое должно принимать символы валюты $ и £ и предупреждать, если пользователь вводит другие специальные символы - PullRequest
0 голосов
/ 07 сентября 2011

Например, $ 1,50, 1,50, £ 4, 3,4 должны быть успешно обработаны.Где только $ или% или # или! 2.4 или & 45 должны быть предупреждены (специальные символы).

Код: (в JS)

 validatePrice : function(price){
        var regexPattern = '^(\\$)\[0-9]+(\.\?[0-9]+)?$';
        if (document.asset_edit_frm.price.value.search(regexPattern)== -1){
            alert('Not a valid currency format ');
            document.asset_edit_frm.price.focus();
            return false;
        }else return true;
    }

Ответы [ 2 ]

2 голосов
/ 07 сентября 2011

Это будет соответствовать описанному вами шаблону.

^(?:\$|\u00A3)?[0-9]+(?:\.(?=[0-9]))?[0-9]*$

Кстати, если это прямой JavaScript, определите регулярное выражение следующим образом:

var regexPattern = /^(?:\$|\u00a3)?[0-9]+(?:\.(?=[0-9]))?[0-9]*$/;

Обратите внимание на отсутствие '

0 голосов
/ 07 сентября 2011

проверка номеров может быть легко выполнена с помощью этого jquery-плагина

...