当用户从浏览器存储表单下拉列表中选择时会触发哪些事件?

时间:2010-07-20 13:29:18

标签: javascript jquery forms browser

当用户在输入中输入文本时,我正在使用jQuery来改变事物。这在键入时可以正常使用.keydown()或.change()。

当用户从浏览器中选择该字段的存储输入时,我无法捕获事件。这是键入时或单击时元素已经具有焦点且浏览器先前已为此输入输入项目时显示的下拉列表。

当用户点击某个输入或使用键盘时,任何人都知道我可以用什么事件从以前输入的存储列表中捕获浏览器输入的数量?

编辑:根据要求,示例为https://launchpad.37signals.com/highrise/signin(用户名和密码,而不是openID)。这会隐藏标签以进行粘贴,从以前的输入中选择或键入。我想模仿这个。

谢谢,
丹尼斯

3 个答案:

答案 0 :(得分:1)

没有触发一个事件。正如您所说,这取决于用户使用它的方式:键盘或鼠标。

如果我能记得很清楚,键盘方法就什么都不会触发。你应该绑定blur()事件。

mouseup应该适用于鼠标方法。

但是,因为

,你可以立刻绑定几个事件
$("#id").bind("blur mouseup", function(){
    alert("bound !");
});

答案 1 :(得分:1)

change事件也会触发,但是当元素失去焦点时(就像它通常那样

如果有人使用剪贴板中的right-mouse-click -> paste内容,即使没有浏览器缓存,您也会遇到同样的问题......

答案 2 :(得分:0)

mouseup事件怎么样?你在输入上试了吗?