Поле ввода с валютой Currency

Поле с валютой предназначено для ввода сумм в рублях, долларах и пр.

Описание работы

Поле с валютой отличается от обычного поля ввода указанием типа валюты, плейсхолдером и форматированием введенного значения.

Плейсхолдер подсказывает пользователю в каком формате указывается значение. При получении фокуса такой плейхолдер исчезает.

Рубль, доллар и евро обозначаются специальными символами ₽, $ и €. Для удобства верстки интерфейса все знаки валют ставятся справа от поля ввода.

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

Каждый третий разряд налету отбивается тонкой шпацией (U+2009, &thinsp).

Если поставить курсор после такого пробела и нажать Backspace, он удалится вместе с предыдущим символом:

Поле игнорирует любые символы кроме цифр, точки и запятой. При попытке ввести недопустимый символ, поле вспыхивает синим. Тултип с текстом ошибки при этом не показывается, т.к. пользователь и сам поймет в чем проблема, а тултип будет только отвлекать:

Точка, слеш (/), буква б или ю налету заменяются на запятую. Слеш, б и ю находятся находятся на тех же клавишах, что точка и запятая в противоположной раскладке и пользователь может нажимать их по ошибке.

Повторный ввод запятой игнорируется, поле при этом вспыхивает.

Поле без копеек

Если по формату в поле должно быть целое значение, показывается плейсхолдер «0».

Если пользователь введет дробное значение, при потере фокуса оно должно округлиться по правилу, предусмотренному в данной форме отчетности. Если правило не описано, округление производится по математическому правилу: до 0,49 в меньшую сторону, после 0,5 в большую.

Если округлять за пользователя по каким-то причинам нельзя, при вводе запятой или точки сразу же показываем сообщение об ошибке:

Поле c копейками

Если по формату допускаются копейки, показывается плейсхолдер «0,00».

Дробная часть числа отделяется от основной запятой.

Дробная часть показывается всегда. Если введено значение без копеек, при потере фокуса добавляются нули:

Выравнивание

В колонках из нескольких полей выравнивайте значение по правому краю. Так проще сравнивать суммы.

Валидация

Валидация не отличается от обычного поля ввода.