2014-07-10 44 views
0

jquery新手在這裏,所以請抵制懲罰我的無知的衝動。我試圖自動計算並填充另一個變化的兩個輸入的值。一個應該是原來的120%。另一個應該是原來的140%。我要去哪裏錯在這裏:jQuery - 用另一個輸入的百分比倍數填充兩個輸入變化

jQuery(document).ready(function({ 
    jQuery("#jform_listprice").on("change", function() { 
     var val = +this.value || 0; 
     var result_low = +val * 1.20.val(); 
     var result_high = +val * 1.40.val(); 
     jQuery("#jform_newprice").val(result_high.toFixed(2)); 
     jQuery("#jform_usedprice").val(result_low.toFixed(2)); 
    }); 
}); 
+2

您無法在非jQuery對象上調用'.val()'1.20.val()' –

回答

0
jQuery(document).ready(function(){ 
    jQuery("#jform_listprice").on("change", function() { 
     var val = $(this).val(); 
     if(isNaN(val)) return; // Leave now if value is not a number 
     var result_low = val * 1.20, 
      result_high = val * 1.40; 
     jQuery("#jform_newprice").val(result_high.toFixed(2)); 
     jQuery("#jform_usedprice").val(result_low.toFixed(2)); 
    }); 
}); 

其實你並不需要強制轉換的整數或浮點數,JS會嘗試把它儘快有參與運算。如果不這樣做,結果將是NaN。另外.val()是一個jQuery方法,不是可以在Number對象上調用的JS本地方法。

相關問題