JQuery - 如何将NaN更改为其他内容

时间:2013-08-29 02:59:37

标签: jquery nan

我有一个显示各种下拉列表总数的函数。如果其中一个下拉菜单设置为#(起始值),则结果值显示为NaN。

我想更改NaN在我的页面上的显示方式。我希望它读“ - ”而不是“NaN”。

这是带变量的函数,省略了if / elses:

function multiply() {
    $('#total').text((((beds * perhour) + (addbath)) * discount ));
}

如何将文字设置为--而不是NaN

4 个答案:

答案 0 :(得分:3)

一个简单的解决方法是使用NaN是假值的事实

function multiply() {
    $('#total').text(((((beds * perhour) + (addbath)) * discount)) || 0);//instead of 0 you can pass any default value here like an empty string
}

答案 1 :(得分:2)

您可以使用isNaN()来比较您是否有号码或NaN,您可以使用ternary conditional operator为div分配result或字符串常量"--"

result = isNaN((((beds * perhour) + (addbath)) * discount ))
$('#total').text(isNaN((result) ? "--" : result) 

答案 2 :(得分:0)

function multiply() {
    var total = ((beds * perhour) + (addbath)) * discount; 
    $('#total').text(!isNan(total) ? total : '--');
}

答案 3 :(得分:0)

您可以在jquery中使用isNumeric函数,

 $.isNumeric(NaN);    // false

请参阅此http://api.jquery.com/jQuery.isNumeric/