Как сделать, чтобы при вводе числа в поле добавлялись разделители групп разрядов?
Как сделать, чтобы при вводе числа в поле добавлялись разделители групп разрядов?
как на сайте сбербанка http://www.sberbank.ru/moscow/ru/per...uying_project/ вводишь в поле "5000000", число преобразуется в "5 000 000". Если снова кликнул на поле, число превращается обратно в "5000000". |
Задавал этот вопрос ранее. Почитай, может выцарапаешь что
http://javascript.ru/forum/ajax/4275...hhyu-ajax.html |
var n = '5000000'; //все значения в полях ввода, это строки //форматируем по сотням n = n.replace(/\B(?=(?:\d{3})+(?!\d))/g, ' '); alert(n) //возвращаем "в кучу" n = n.replace(/\s/g, '') alert(n) |
Цитата:
|
Цитата:
<input onblur="var n=$(this).val(); n = n.replace(/\B(?=(?:\d{3})+(?!\d))/g, ' '); $(this).val(n)" name="cost" value="" type="number"> после потери фокуса введенное в него число должно разделяться пробелами. но вместо этого если в числе больше 3 знаков, то оно исчезает. |
Цитата:
Наверно именно такое называют "жиквери головного мозга"... Поскольку это заменяется на <input onblur="this.value = this.value.replace(/\B(?=(?:\d{3})+(?!\d))/g, ' ');" name="cost" value="" type="number"> |
Цитата:
|
:write:
Цитата:
Цитата:
|
:-?
<input onblur="this.value = this.value.replace(/[^\d]/g, '').replace(/\B(?=(?:\d{3})+(?!\d))/g, ' ')" name="cost" value="" onfocus="this.value = this.value.replace(/\s/g, '')" > |
Цитата:
|
Часовой пояс GMT +3, время: 04:51. |