在jQuery中,将数字格式化为小数点2位的最佳方法是什么?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (115)

这就是我现在拥有的:

$("#number").val(parseFloat($("#number").val()).toFixed(2));

在我看来很乱。我不认为我把这些功能链接正确了。我是否必须为每个文本框调用它,还是可以创建一个单独的函数?

提问于
用户回答回答于

以下是jQuery插件的开始,它将字段的值格式化为小数点后两位。

它是由字段的onchange事件触发的。你可能想要不同的东西。

<script type="text/javascript">

    // mini jQuery plugin that formats to two decimal places
    (function($) {
        $.fn.currencyFormat = function() {
            this.each( function( i ) {
                $(this).change( function( e ){
                    if( isNaN( parseFloat( this.value ) ) ) return;
                    this.value = parseFloat(this.value).toFixed(2);
                });
            });
            return this; //for chaining
        }
    })( jQuery );

    // apply the currencyFormat behaviour to elements with 'currency' as their class
    $( function() {
        $('.currency').currencyFormat();
    });

</script>   
<input type="text" name="one" class="currency"><br>
<input type="text" name="two" class="currency">
用户回答回答于

也许是这样的,如果你愿意的话,你可以选择一个以上的元素?

$("#number").each(function(){
  $(this).val(parseFloat($(this).val()).toFixed(2));
});

扫码关注云+社区

领取腾讯云代金券