Автозаміна коми на крапку в input через javascript (звернення через jquery)
Category: Form, JavaScript Code Examples
Актуально до використання в калькуляторах, де виникає помилка через введення клієнтом коми замість крапки.
Код нижче:
- Розділено на 2 частини, в першій звернення до поля відбувається по ID, в другій – по класу.
- Скрипт спрацьовує і на вставку інформації з буферу обміну і на введення.
- Цифра “8” в коді – то обмеження кількості цифр після крапки.
<body> <form> <input type="text" id="first"> <input type="text" id="second"> <br/> <input type="text" class="price"> <input type="text" class="price"> <input type="text" class="price"> </form> <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <script type="text/javascript"> $('input#first').on('input', function() { $(this).val($(this).val().replace(/\,/g, '.')); $(this).val($(this).val().replace( /(?=(\d+\.\d{8})).+|(\.(?=\.))|([^\.\d])|(^\D)/gi, '$1')); }) $('input#second').on('input', function() { $(this).val($(this).val().replace(/\,/g, '.')); $(this).val($(this).val().replace( /(?=(\d+\.\d{8})).+|(\.(?=\.))|([^\.\d])|(^\D)/gi, '$1')); }) $('input.price').on('input', function() { $(this).val($(this).val().replace(/\,/g, '.')); $(this).val($(this).val().replace( /(?=(\d+\.\d{8})).+|(\.(?=\.))|([^\.\d])|(^\D)/gi, '$1')); }) </script> </body>