Режим только положительных чисел в AutoNumeric предназначен для ввода и отображения исключительно положительных значений, включая ноль при необходимости. Этот режим особенно полезен для финансовых приложений, калькуляторов, систем учета и любых интерфейсов, где отрицательные значения недопустимы.
Для активации режима только положительных чисел используется параметр
minimumValue. Его значение следует установить равным
0 или любому другому положительному числу, если требуется
ограничить ввод снизу. Пример инициализации:
new AutoNumeric('#positiveInput', {
minimumValue: '0',
maximumValue: '9999999', // опциональное верхнее ограничение
decimalPlaces: 2,
digitGroupSeparator: ',',
decimalCharacter: '.',
modifyValueOnWheel: false
});
Ключевые моменты:
minimumValue: '0' гарантирует, что пользователь не
сможет ввести отрицательное число.maximumValue ограничивает максимально допустимое
значение. Если параметр не задан, верхняя граница отсутствует.decimalPlaces определяет точность дробной части.digitGroupSeparator улучшает читаемость больших
чисел.Если пользователь попытается ввести знак минус или отрицательное число, AutoNumeric автоматически:
minimumValue).Пример поведения:
const an = new AutoNumeric('#positiveInput', { minimumValue: '0' });
an.set('-123'); // результат: 0
an.set('-0.5'); // результат: 0
AutoNumeric поддерживает автоматическое исправление недопустимых значений при blur (потере фокуса). Если поле пустое или содержит недопустимое отрицательное число, оно заменяется на минимальное значение:
const an = new AutoNumeric('#positiveInput', {
minimumValue: '0',
emptyInputBehavior: 'zero'
});
emptyInputBehavior: 'zero' – при пустом поле
вставляется значение 0.Режим только положительных чисел интегрируется с системами валидации:
minimumValue.Пример настройки для улучшенной UX:
new AutoNumeric('#positiveInput', {
minimumValue: '0',
maximumValue: '100000',
decimalPlaces: 2,
digitGroupSeparator: ' ',
decimalCharacter: ',',
modifyValueOnWheel: true,
selectOnFocus: true
});
modifyValueOnWheel: true позволяет
увеличивать/уменьшать значение с помощью колесика мыши.selectOnFocus: true выделяет содержимое при фокусе,
ускоряя редактирование.Режим только положительных чисел совместим с:
minimumValue сохраняется при экспоненциальном вводе.Пример:
new AutoNumeric('#currencyInput', {
currencySymbol: '$',
minimumValue: '0',
maximumValue: '1000000',
decimalPlaces: 2
});
Параметры minimumValue и maximumValue можно
менять в процессе работы приложения:
const an = new AutoNumeric('#positiveInput', { minimumValue: '0', maximumValue: '1000' });
an.update({ maximumValue: '5000' });
Режим только положительных чисел обеспечивает строгую защиту от некорректного ввода, сохраняя при этом гибкость форматирования и удобство пользовательского интерфейса.