2010-06-09 37 views
1

嘿傢伙,我不知道很多的JS,但我想用jQuery做一些快速的工作語法錯誤。幫助一個小的JS片段:(

但我一直在盯着這大約一個小時,我不明白我錯過:

<script type="text/javascript"> 
    $('#qty_6035').change(function() { 
     var substractedQty, stockQty, remQty; 
     substractedQty = (int) $('#qty_6035').val(); // missing ; before statement 
     stockQty = (int) $('#orig_qty_6035').val(); 
     $('#rem_qty_6035').html(stockQty-substractedQty); 
    }); 
</script> 

jQuery庫包含在文檔的beggining

感謝

回答

4

JavaScript是一種動態語言,以便以一個字符串轉換成一個。你可以使用01號碼/parseInt功能:

<script type="text/javascript"> 
    $('#qty_6035').change(function() { 
     var substractedQty = parseFloat($('#qty_6035').val()); 
     var stockQty = parseFloat($('#orig_qty_6035').val()); 
     $('#rem_qty_6035').html(stockQty - substractedQty); 
    }); 
</script> 
6

使用parseInt功能,不(int)鑄造

+1

使用'parseInt()'---'parseInt($(「#qty_6035」)。val(),10);' – gnarf 2010-06-09 10:31:31

4

的JavaScript不是Java。 int是一個保留關鍵字,但沒有任何功能分配給它,並且您不能以這種方式投射值。

你可能想:

substractedQty = parseInt($('#qty_6035').val(), 10); 
+0

Arghhhh !!!請確保使用'radix'參數來強制使用base 10。該錯誤是如此該死的混亂:) 謝謝大家! – Bogdan 2010-06-09 10:30:10

3

JavaScript不支持類型轉換就像強類型語言(C#,Java的)做的。要將字段值(字符串)轉換爲數字,您需要使用全局函數parseInt()parseFloat()

如果用戶輸入了一些錯誤的輸入而不是數字,您可能還需要確保正確解析值。對此使用isNAN()