我已经看到了这些jquery发生的事情,只是想知道是否有一个简单的数字格式化脚本。

本质上,我们希望做的只是格式(客户端)(仅用于检查目的),即在字段中输入的数字。为了在页面的其他位置(大概在div中)显示他们输入的格式化价格。

所以说,场

输入id =“price” name =“price” size =“50” type =“text” class =“medium” /

他们输入1234560

我想在页面上的其他地方显示:
您输入了:价格:1,234,560.00美元。它是否正确 ?

这仅出于视觉目的。另外,也可以选择更改其键入的值并对其进行“实时”格式化,但是我们要发送给数据库的值是纯数字,即:1234560

最佳答案

设置这样的功能
Javascript format currency

function CurrencyFormatted(amount)
{
    var i = parseFloat(amount);
    if(isNaN(i)) { i = 0.00; }
    var minus = '';
    if(i < 0) { minus = '-'; }
    i = Math.abs(i);
    i = parseInt((i + .005) * 100);
    i = i / 100;
    s = new String(i);
    if(s.indexOf('.') < 0) { s += '.00'; }
    if(s.indexOf('.') == (s.length - 2)) { s += '0'; }
    s = minus + s;
    return s;
}

然后为这样的jQuery设置onchange
jQuery(document).ready(function(){

  jQuery('#price').change(function(){

      jQuery('#mydivsomewhere').val(CurrencyChange(jQuery('#price').val));
  });

});

不知道这是否100%正确,还没有测试。但是,只要输入框中的文本发生更改,就应调用CurrencyFormat。应该传入ID为price的文本框的val,并使用格式化后的值设置id mydivsomewhere的div。

09-25 17:03
查看更多