2012-11-18 2 views
0

Привет всем, мне нужна помощь здесь. Я никоим образом не программист на javascript, но я собрал код, чтобы сделать то, что мне нужно, но у меня возникают проблемы с форматированием валюты того, что у меня есть. В коде ниже myForm.man_quan.value не нужен $, но ему нужны запятые, разделяющие тысячи, а myForm.man_price.value нужны $, запятые и .00, если цена без центов.Javascript Валютный формат

В основном мне нужно иметь возможность добавлять $ и, и .00 к тому, что у меня есть.

function runTotal(myForm) { 
var form_field1 = Number(myForm.man_quan.value); 
var form_field2 = Number(myForm.man_price.value); 
myForm.man_total.value = form_field1.toFixed(0) * form_field2.toFixed(2); 
} 

ответ

0

я думаю, что ваше ищу ParseInt() http://www.w3schools.com/jsref/jsref_parseint.asp , так как это валюта, вы можете использовать parseFloat http://www.w3schools.com/jsref/jsref_parsefloat.asp

so i t должно быть что-то вроде:

function runTotal(myForm) { 
    var form_field1 = parseFloat(myForm.man_quan.value); 
    var form_field2 = parseFloat(myForm.man_price.value); 
    myForm.man_total.value = form_field1.toFixed(0) * form_field2.toFixed(2); 
} 

Повторное добавление, для тысяч, может быть более сложным. но вы можете преобразовать var в строку с помощью toString() и добавить знак $ так.

var output = "$"+myForm.man_total.value.toString(); 
0

Попробуйте

function runTotal(myForm) { 
var form_field1 = formatmoney(myForm.man_quan.value); 
var form_field2 = formatmoney(myForm.man_price.value); 
myForm.man_total.value = form_field1.toFixed(0) * form_field2.toFixed(2); 
} 
+0

Это не работает для меня, это на самом деле не сделал не делайте ничего, кроме разрыва процесса расчета. – BeKustom

0

Заменить или удалить ненужный символ как $ и запятая

form_field1 = myForm.man_quan.value.replace(',', '.'); 
form_field2 = myForm.man_price.value.replace('$', ''); 
myForm.man_total.value = form_field1 * form_field2; 
+0

Я пробовал это, и он тоже не работал. Я все еще не получаю $ и запятые. – BeKustom

+0

Можете ли вы отправить пример? –

0

очень простая функция в JavaScript называется toLocaleString

Примечание: Тип данных должен быть целым числом

function numTocurrency(num) 
{ 
    return parseInt(num).toLocaleString(); 
} 
+0

Будет ли вывод 'toLocaleString' отформатирован как валюта? – Kobi

+0

Да, это функция JavaScript по умолчанию. –

+0

Int приведет к тому, что центами часть значения будет потеряна. – kRiZ

Смежные вопросы