我绑定3个事件:绑定事件,停止多个动作
$("#form").bind('keyup change submit',function(event){
//do something
alert("test alert");
});
在一个形式,你可以有文本字段,下拉菜单,复选框,等....
从我注意到了,直到您单击文本框的“外部”之后,才会使用文本字段触发“更改”事件。 因此,我使用“keyup”事件,这对我很有用。
而“提交”事件是不言自明的。 (我基本上是通过绑定这些事件来让自己避免执行多个选择器。) 我可能希望稍后添加更多事件。
这里是我的问题....
弹出警报会触发2次,当我进行了更改一个文本框。不知道这是因为我点击了导致它的弹出窗口上的按钮,或者如果更改文本框中的值也可以同时触发两个键盘弹出的更改事件。
无论哪种方式,这是让我疯了。
有关改进此方法的任何想法,没有多个选择器?
当然'target === event.target'总是为false,因为'target'是未定义的? – Eric 2009-11-08 13:13:02
在触发按键事件之前,'target'为'null'。当用户输入时,会触发多个按键事件,从而将“target”设置为当前元素。当该元素上的变化事件触发时(失去焦点后)'target === event.target'为true。 – 2009-11-08 17:56:21