jQuery 检查输入值是否在更改时增加/减少

Dom*_*tre 3 javascript jquery input onchange detection

我有一个输入类型号

<input type="number" value="5" id="nmovimentos"/>
Run Code Online (Sandbox Code Playgroud)

我想在值增加或减少时执行特定的操作(提醒一个更简单的例子)。

我有以下 jQuery 代码:

$(document).ready(function(){
    var oldValue = $("#nmovimentos").val();
  $("#nmovimentos").change(function(){
    var newValue = $(this).val();
    if (newValue > oldValue)
        alert("increase!");
     else
         alert("decrease!");
  });
});
Run Code Online (Sandbox Code Playgroud)

但它不起作用,因为它无法检测到 oldValue 变量 .. 所以关于如何做到这一点的任何线索?非常感谢!

提琴手

dfs*_*fsq 5

您可以使用每个 HTMLInputElement 必须存储先前值的某些属性,例如defaultValue. 在这种情况下,您可以节省几行代码,并使代码更简洁简洁:

$("#nmovimentos").change(function () {
    var direction = this.defaultValue < this.value
    this.defaultValue = this.value;
    if (direction) alert("increase!");
    else alert("decrease!");
});
Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="number" value="5" id="nmovimentos" />
Run Code Online (Sandbox Code Playgroud)