val()函数给出控制台错误

时间:2016-10-27 12:16:35

标签: javascript jquery input numbers

input[type="number"]具有max属性,因此人们无法点击高于给定的数字。但这并不算数字类型,它们可以超出给定的最大数量。所以,使用jQuery,我想为此做一个解决方案。我已经知道了:

    var productPageInput = $('#product-options-wrapper .option input[type="number"].qty');
    var max = 60;
    productPageInput.attr('max', max);

    productPageInput.bind('keyup input', function(e){
        console.log($(this).val());
        if( $(this).val() > max ){
            $(this).val() = max;
        }
    });

但是,每次执行此代码时,如果键入60以上,则会出现此控制台错误:

    Uncaught ReferenceError: Invalid left-hand side in assignment(…)

指向这一行:

    $(this).val() = max;

这里出了什么问题?

2 个答案:

答案 0 :(得分:4)

分配值:

$(this).val(max);

通常,JavaScript中赋值运算符左侧的函数调用没有意义。

答案 1 :(得分:0)

这种方式可以让JQuery设置输入值

$("input").val("value");
//or
$("input")[0].value = "value";