2015-02-24 45 views
0

html中有一些元素附带了默认事件。就我而言,我与<input type="text" id="filter">让默认动作先执行

工作,我已经应用了按键事件的输入,像这样:

$('#filter').on('keypress', function(){ 
console.log($(this).val()); 
}); 

这里有例子什么我按什么日志给出了一个列表我:

PRESSED ==>造成日志

  1. 'A' ==>'
  2. 'AA' ==> 'A'
  3. 'AAA' ==> 'AA'

正如你可以看到默认情况下被我的事件完成后调用。这意味着在按键上,我的函数在实际更新之前将输入值的当前值写入日志中。

我想获得价值价值已更新后避免连接的旧值与转换的关键角色。

有没有办法强制默认动作先行?如果没有,这不是什么大不了的事情,我会用我的第二种方法。只是好奇,如果这是可能的。

回答

1

值重点更新了,所以使用keyup事件,而不是

$('#filter').on('keyup', function(){ 
    console.log($(this).val()); 
}); 
+0

谢谢,这解决了这个问题。我会尽我所能接受答案。 – rottenoats 2015-02-24 10:55:01

+0

@Grimbode - 不客气! – adeneo 2015-02-24 11:44:56