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!");
});
});