使用单一功能进行货币验证和格式化

时间:2013-10-01 22:33:58

标签: javascript jquery

我尝试从单个函数验证和格式化货币值。它还提供空值警报。任何人都可以帮我找到更好的解决方案吗?

$('.currency').blur(function() {
var formatted = parseFloat($(this).val());
if(formatted) {
formatted = formatted.toFixed(2);
$(this).val(formatted);
}else{
if(formatted != "") {alert('Invalid Amount....!!!');} }
});

1 个答案:

答案 0 :(得分:1)

var formatted = parseFloat($(this).val());

如果输入值为空,则会将formatted设置为NaN。然后,您在formatted语句中测试ifNaN为“false-y”,表示您将获得alert

如果值为空,您想做什么?如果要忽略它,请将其视为0:

var value = $(this).val();
value = (value.trim() === "" ? "0" : value);

您可能还想检查formatted是否为NaN

if(!isNaN(formatted)) {
    //valid value
} else {
    //invalid value
}