https://codepen.io/Denisssss1ad/pen/...L?editors=1111 посмотри так ли
<input type="text" id="myInput" placeholder="Enter a number">
const inputField = document.getElementById('myInput');
inputField.addEventListener('input', (e) => {
const value = e.target.value.replace(/[^\d.,]/g, '');
const [integer, decimal] = value.split('.');
let formattedValue = '';
formattedValue += integer.replace(/\B(?=(\d{3})+(?!\d))/g, ' ');
if (decimal) {
formattedValue += ',' + decimal;
}
e.target.value = formattedValue;
});
Как нибудь сам объедини эти фрагменты, вроде всё, как ты просил
inputField.addEventListener('input', (e) => {
const value = e.target.value;
const [integerPart, decimalPart] = value.split(',');
if (integerPart && integerPart.length > 12) {
e.target.value = integerPart.substring(0, 12);
}
if (decimalPart && decimalPart.length > 2) {
e.target.value = `${integerPart},${decimalPart.substring(0, 2)}`;
}
});