有谁知道我如何在这里的onChange命令中设置之前获取先前的数量值?

我目前正在将此用于输入框。 CSS是给我带来麻烦的原因javascript - jQuery onChange获取先前的值-LMLPHP

当我更改值时,很容易设置新的数量和新的总成本。但是,当我按下时,我无法将其与之前的数量与新数量进行比较,以查看数量值是增加还是减少

jQuery在下面-

$('#p1').on('change', function() {
        var cost = $('#p1_price').text();
        var quantity = $('#p1').val();
        var total = cost * quantity;
        total = parseFloat(total).toFixed(2)
        $('#p1_total').text(total);
        $('#total_price').text(+$('#total_price').html() + +cost);
    });


任何人都可以阐明这件事。将不胜感激!

最佳答案

我在想...在对象中数组!

您可以在javascript对象中定义一个数组

var inputObj =
{
    var index : -1; //When the input has nothing so far
    var values : [];
};


然后每次输入改变

$('#p1').on('change', function() {
        var cost = $('#p1_price').text();
        var quantity = $('#p1').val();
        var total = cost * quantity;
        total = parseFloat(total).toFixed(2)
        $('#p1_total').text(total);
        $('#total_price').text(+$('#total_price').html() + +cost);

        //Add a new value to the array and refresh the index  of the current value
        inputObj.values.add(total);
        inputObj.index = inputObj.values.length + 1;
    });


每次您按下向下按钮:

function pressDown()
{
    inputObj.index  = inputObj.index - 1;
    $('#p1_total').text(inputObj.values[inputObj.index]);
}

10-06 01:34