大家好,我需要一些帮助。我绝不是一个javascript程序员,但我拼凑了一些代码来完成我需要它做的事情,但我遇到了我所拥有的货币格式的问题。在下面的代码中,myForm.man_quan.value不需要$但是需要用逗号分隔数千,而myForm.man_price.value需要$,逗号和.00如果价格没有分数。
基本上我需要能够将$和.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 :(得分: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);
}
答案 1 :(得分:0)
替换或删除不必要的符号,例如$和逗号
form_field1 = myForm.man_quan.value.replace(',', '.');
form_field2 = myForm.man_price.value.replace('$', '');
myForm.man_total.value = form_field1 * form_field2;
答案 2 :(得分:0)
我认为你在寻找parseInt()http://www.w3schools.com/jsref/jsref_parseint.asp 因为它是货币,你可能想要使用parseFloat http://www.w3schools.com/jsref/jsref_parsefloat.asp
所以它应该是这样的:
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);
}
对于成千上万的人来说,重新加入可能会更加棘手。但你可以使用toString()将var改为string,并像这样添加$符号。
var output = "$"+myForm.man_total.value.toString();
答案 3 :(得分:0)
JavaScript中非常简单的函数,名为 toLocaleString
注意:数据类型应为整数
function numTocurrency(num)
{
return parseInt(num).toLocaleString();
}