-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

elseifJavaScriptにはステートメントがありません。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

また、 null 値ではなく空の文字列もチェックします

メソッドの使用方法に構文エラーがあります$.trim。文字列が必要です。

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