我正在使用它来计算金额并根据两个文本框获得折扣。这是有效的,但是当第二个框为空时我得到一个NaN。只要我输入第二个框就可以了。
$('#deal_price').keyup(function() {
var num1 = $("#deal_retail").val(),
num2 = $("#deal_price").val(),
result = parseInt(num1, 10) - parseInt(num2, 10);
result_percentage = result / parseInt(num1, 10);
result_percentage = parseFloat(result_percentage).toFixed(2);
result_percentage = result_percentage * 100;
$(".result_save").text(result);
$(".result_percentage").text(result_percentage);
});
我尝试用一个空的else替换result_save和result_percentage,如下所示
if (result_percentage == '' || result == '') { }
else {
$(".result_save").text(result);
$(".result_percentage").text(result_percentage);
}
我认为我没有得到如何使用空选项。是否有像PHP这样的东西
if(empty($myvar)){
// nothing
}
else {
$dosomething = '2';
}
答案 0 :(得分:2)
如果要验证号码,请使用isNaN
此外,您还可以使用unary !
:if(..){}else{ ... }
:
if(!..){...}
。
if (!isNaN(result_percentage)) { // If the input is a valid number
$(".result_save").text(result);
$(".result_percentage").text(result_percentage);
}
答案 1 :(得分:1)
看一下以下解决方案:
如果您使用三元运算符,则可以清除文本字段:
$(".result_save").text(isNaN(result) ? '' : result);
$(".result_percentage").text(isNaN(result_percentage) ? '' : result_percentage);