我尝试从单个函数验证和格式化货币值。它还提供空值警报。任何人都可以帮我找到更好的解决方案吗?
$('.currency').blur(function() {
var formatted = parseFloat($(this).val());
if(formatted) {
formatted = formatted.toFixed(2);
$(this).val(formatted);
}else{
if(formatted != "") {alert('Invalid Amount....!!!');} }
});
答案 0 :(得分:1)
var formatted = parseFloat($(this).val());
如果输入值为空,则会将formatted
设置为NaN
。然后,您在formatted
语句中测试if
。 NaN
为“false-y”,表示您将获得alert
。
如果值为空,您想做什么?如果要忽略它,请将其视为0:
var value = $(this).val();
value = (value.trim() === "" ? "0" : value);
您可能还想检查formatted
是否为NaN
:
if(!isNaN(formatted)) {
//valid value
} else {
//invalid value
}