Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery检查输入值是否随更改而增加/减少_Javascript_Jquery_Input_Onchange_Detection - Fatal编程技术网

Javascript jQuery检查输入值是否随更改而增加/减少

Javascript jQuery检查输入值是否随更改而增加/减少,javascript,jquery,input,onchange,detection,Javascript,Jquery,Input,Onchange,Detection,我有一个输入类型编号 <input type="number" value="5" id="nmovimentos"/> 但它不起作用,因为它无法检测oldValue变量。。那么有没有关于如何做到这一点的线索?多谢各位 更新处理程序中的oldValue $(文档).ready(函数(){ var oldValue=$(“#nmovimentos”).val(); $(“#nmovimentos”).change(函数(){ var newValue=$(this.val(); 如果

我有一个输入类型编号

<input type="number" value="5" id="nmovimentos"/>
但它不起作用,因为它无法检测oldValue变量。。那么有没有关于如何做到这一点的线索?多谢各位


更新处理程序中的
oldValue
$(文档).ready(函数(){
var oldValue=$(“#nmovimentos”).val();
$(“#nmovimentos”).change(函数(){
var newValue=$(this.val();
如果(新值>旧值)
console.log(“增加!”);
其他的
日志(“减少!”);
旧值=新值;
});
});

您必须首先将旧值保存到某个位置。这很方便

$(文档).ready(函数(){
var nmovimentos=$(“#nmovimentos”);
var oldValue=nmovimentos.val();
nmovimentos.data(“oldValue”,oldValue);
$(“#nmovimentos”).change(函数(){
var oldValue=$(此).data(“oldValue”);
var newValue=$(this.val();
如果(新值>旧值)
警惕(“增加!”);
其他的
警惕(“减少!”);
$(此).data(“oldValue”,newValue);
});
});

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

$(“#nmovimentos”).change(函数(){
var方向=this.defaultValue


您可以使用类似的方法来监视元素任何属性的更改,然后根据需要做出反应。在jquery.eye的情况下,旧值和新值都作为参数传递给回调。因此
defaultValue
始终是以前的值?不,通常默认值是初始值,但在这种情况下它是以前的值,因为我们使用
this.defaultValue=this.value重新分配它。不是有意使用的,但无论如何也不是经常使用。非常感谢,我真的很喜欢你的代码!非常干净的方式:)我不敢相信这是一件如此简单的事情,就像弗罗吉特最终提升了旧价值一样!非常感谢:)
$(document).ready(function(){
    var oldValue = $("#nmovimentos").val();
  $("#nmovimentos").change(function(){
    var newValue = $(this).val();
    if (newValue > oldValue)
        alert("increase!");
     else
         alert("decrease!");
  });
});