语法错误。帮助一个小的JS片段:(

时间:2010-06-09 10:25:40

标签: javascript jquery

嘿伙计们。我不太了解JS,但我想用jQuery做一些快速的工作。

但是我一直盯着这个约一个小时,我不明白我错过了什么:

<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库包含在文档的开头。

感谢。

4 个答案:

答案 0 :(得分:6)

使用parseInt功能,而非(int)投射

答案 1 :(得分:4)

Javascript是一种动态语言,因此为了将字符串转换为数字,您可以使用parseFloat / 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>

答案 2 :(得分:4)

JavaScript不是Java。 int是保留关键字,但没有为其分配任何功能,并且您无法以这种方式转换值。

你可能想要:

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

答案 3 :(得分:3)

Javascript不支持像强类型语言(C#,Java)这样的类型转换。要将字段值(字符串)转换为数字,您需要使用全局函数parseInt()parseFloat()

如果用户输入了一些错误的输入而不是数字,您可能还需要确保正确解析值。请使用isNAN()