-1
var costp;
var anzahl_der_personen = $('#anzahl_der_personen').val();

    if( +anzahl_der_personen == 1 ) {
        costp = 0;
    }elseif( $.trim('#anzahl_der_personen').val() === null ){
        costp = 0;
    }else {
         costp = (59 * $('#anzahl_der_personen').val()) - 59;
    }

由于某种原因,它永远不会出现在 elseif 语句中!我尝试了其他方法是 .lenght, .is(empty).. 来查看文本字段是否为空,但它总是转到 else 语句!如果值不是 1,则转到 else 语句。检查值是空还是 null 的正确方法是什么,因为如果用户没有在字段中输入任何内容,我希望变量 costp 为 0;

4

2 回答 2

2

JavaScript 没有elseif声明。改为使用else if

另外,你用$.trim错了。


最后,不需要所有冗余代码。试试这个:

var costp;
var anzahl_der_personen = +$('#anzahl_der_personen').val();

if ( ! anzahl_der_personen || anzahl_der_personen === 1 ) {
    costp = 0;
} else {
    costp = (59 * anzahl_der_personen) - 59;
}
于 2013-01-04T18:13:59.403 回答
2

之间应该有空格else if

还要检查空字符串而不是空值

您使用该$.trim方法的方式存在语法错误。它需要一个字符串。

   else if( $.trim(anzahl_der_personen) === '' ){
于 2013-01-04T18:14:34.347 回答