2012-03-08 14 views
0

私は額を計算し、2つのテキストボックスに基づいてパーセントを得るためにこれを使用しています。これは、2番目のボックスが空のときにNaNを取得する以外は機能します。空の場合はJquery

if (result_percentage == '' || result == '') { } 
else { 
$(".result_save").text(result); 
$(".result_percentage").text(result_percentage); 
} 

以下のようにいるかのようにすぐに私は2番目のボックスに入力すると、それは私が他の空でresult_saveとresult_percentageを交換しようとした

$('#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); 
}); 

正常に動作します私は私が取得していないと思います空のオプションの使い方PHPのようなものを使用すると、数、使用isNaNを検証したい場合は

if(empty($myvar)){ 
// nothing 
} 
else { 
$dosomething = '2'; 
} 

答えて

2

を持ってあります。
また、代わりにif(..){}else{ ... }を使用して、あなたもunary !を使用することができます:if(!..){...}

if (!isNaN(result_percentage)) {    // If the input is a valid number 
    $(".result_save").text(result); 
    $(".result_percentage").text(result_percentage); 
} 
+0

あなたは完璧に働きました – MHowey

1

は、次の解決策を見てみましょう:

http://jsfiddle.net/2rMn6/

を使用する場合は、あなたのテキストフィールドをクリアすることができます三項演算子:

$(".result_save").text(isNaN(result) ? '' : result); 
$(".result_percentage").text(isNaN(result_percentage) ? '' : result_percentage); 
関連する問題