Yek*_*ver 4 javascript jquery javascript-events
如何检测输入值是否在模糊事件中发生了变化?
例如,每个输入字段都有默认值(可以为空),在当前输入松散之后我们应该确定焦点,将值更改.
这该怎么做?
您可以切换到.change()事件而不是.blur(),但我认为从根本上来说存在各种各样的缺陷.我建议使用Jonathan Azoff的Changed jQuery插件(http://www.azoffdesign.com/changed).在这种情况下这可能有点过头了,所以......
有很多方法可以做到这一点,其中一种方法是将旧值存储为输入的数据属性,然后将输入值与模糊时的旧值进行比较.如果两个值不同,则会发生变化.
例:
<input type="text" name="firstname" data-old="Jack">
Run Code Online (Sandbox Code Playgroud)
您可以使用后端类型的东西存储此值,甚至可以在页面加载时执行此操作.然后在模糊,你可以有一个像这样的事件:
$('input').blur(function() {
if ($(this).data('old') != $(this).val())
// It changed! Do something!
}
Run Code Online (Sandbox Code Playgroud)
如果旧值为"Jack",然后您将名称更改为"Bob"并触发模糊事件,则会看到"Jack"不等于"Bob",并执行您的操作.
希望有所帮助.祝好运.