Как использовать JavaScript для форматирования чисел?

Я хочу использовать JavaScript, чтобы ограничить ввод в текстовое поле форматированием номера валюты. Например:

<input type="text" value="2,500.00" name="rate" />

Как указано выше, текстовое поле должно принимать только цифры, запятые и точку.

Но после точки он должен принимать две цифры после цифр.

Как мне это сделать? Просьба уточнить.

  • Гнанияр Зубаир

person Gnaniyar Zubair    schedule 30.04.2009    source источник


Ответы (4)


parseFloat может преобразовать строку в число с плавающей точкой и toFixed может указать, сколько знаков после запятой сохранять.

function numToCurrency(num){
    return parseFloat(num).toFixed(2);
}


numToCurrency("4.2334546") // returns 4.23
person Zach    schedule 30.04.2009
comment
Привет Zech, Спасибо за кодирование вашего экземпляра. Я это попробую. - Гнанияр Зубаир - person Gnaniyar Zubair; 30.04.2009
comment
На самом деле это не делает то, что изначально предназначалось для вашего вопроса... но может быть объединено в более полный ответ. Я оставлю это, если это полезно. - person Zach; 30.04.2009

Если вы хотите выполнить проверку своего текстового поля, вы можете использовать Регулярные выражения . Если вы хотите ограничить ввод пользователя, вы можете перехватывать нажатия клавиш и отфильтровывать те, которые вы хотите, чтобы они вводили, используя ссылку onKeyDown для текстового поля.

person Kirtan    schedule 30.04.2009
comment
Привет Киртан, Спасибо за ваш немедленный ответ. Я это попробую - person Gnaniyar Zubair; 30.04.2009

Эти плагины jQuery могут помочь...

http://www.texotela.co.uk/code/jquery/numeric/< /а>

http://plugins.jquery.com/project/aphanumeric

person Vijay Dev    schedule 30.04.2009
comment
Привет Виджай, Спасибо за ваш спонтанный ответ. я попробую - Гнанияр Зубаир - person Gnaniyar Zubair; 30.04.2009

Вы можете использовать плагин jQuery под названием буквенно-цифровой

jQuery AlphaNumeric — это подключаемый модуль управления javascript, который позволяет вам ограничивать символы, которые пользователь может вводить в текстовые поля или текстовые области. Веселиться.

person eKek0    schedule 30.04.2009