我正在尝试在用户输入时向输入添加脏类。我创建了一个绑定到keydown
事件的指令,并根据上次保存的值检查该值。
elm.bind('keydown', function(event) {
if (event.which === 13)
scope.update();
else if ( scope.last_saved_value !== elm.val() )
elm.addClass('dirty-input');
});
要查看问题,请更改输入中的值,然后按Enter键。这很好用。现在,添加另一个数字,您将看到该字段不会变脏,并且该事件正在捕获先前的值而不是当前值。我的猜测是elm.val()
\ model.$viewValue
仅在事件处理后才更新(允许对值进行操作)。
那么如何捕获keydown
上的当前值?