2016-02-29 6 views
0

Я хочу применить валидацию, если введено значение -ve. Я мог бы сделать это с помощью ниже тегов и атрибуты:Запретить отрицательные числа в h: inputText

<h:inputText id="MyPrice" validatorMessage="negatieve prijs niet toegestaan"> 

    <f:convertNumber type="number" 
        groupingUsed="true" 
        locale="nl_NL" 
        maxFractionDigits="2" 
        minFractionDigits="2"/> 

    <f:validateLongRange minimum="0"/> 
<h:inputText> 

<rich:message for="MyPrice"/> 

С помощью этого я могу успешно проверить -ve и анолит значения с ниже входами: Пошел право на: [Я следую системе счисления Нидерландов, где «» рассматривается как «.» например, чтобы написать 0.55, нам нужно написать 0,55), которое делается мной, используя <f:convertNumber>.

100 
10.25 
10,98 
-100 
-10.25 
-10,98 
0.55 

Но когда я ввел -0,55, проверка не помогла. Просьба предоставить решение для проверки, когда я ввожу значение -ve, которое начинается с -0.xx.

+0

Вы проверили здесь? http://stackoverflow.com/questions/19765009/does-fconvertnumber-use-the-right-number-separator-when-using-patterns-to-for/ – pleft

ответ

1

Ваш валидатор сертификата не подходит - цене нет Long. Измените его на

<f:validateDoubleRange minimum="0" /> 
+0

Снова у меня есть одна проблема. –

+0

Когда я вхожу -11 или -0.54 или -0,54, он работает и считается отрицательным. Также, когда я вхожу в abc00, он проверяет его как «abc00» не число. Но когда я вхожу в 00abc, он принимает/делает это как 00,00. Я хочу показать сообщение проверки для входных данных, таких как 00abc, что «это неверное число». т. е. я хочу показать сообщение проверки, если мой ввод содержит альфа. Я не могу использовать Validateregex, поскольку он не подтверждает мою отрицательную оценку числа. Пожалуйста, предложите. –

+0

Вы можете изменить из 'f: convertNumber' в' 'или'