【发布时间】:2012-05-21 17:22:25
【问题描述】:
我正在这样做:
$(".classname").bind("keypress",function(){
alert("event happened");
})
与上面类似的代码,只工作一次,我的意思是,第一次键入并单击 Enter 时,它可以工作,但下一次,它根本没有反应。
$("#id").bind("keypress",function(){
alert("haiii");
})
第二个代码一直工作,但第一个代码只工作一次。
另外,如果第二个代码运行一次,第一个代码甚至不会运行一次。
解决办法是什么?我想我在这里遗漏了一些规则,你能告诉他们,以便我搜索它们。 谢谢
【问题讨论】:
-
可能是因为您提交了表单?
-
你的意思是,你想让我使用 e.preventDefault() 吗?但是 preventdefault() 应该用于提交按钮,对吗?这里如果我阻止默认,输入框的正常动作不会发生,这里我指的元素是输入类型=文本元素
-
试试
e.preventDefault() -
jsfiddle.net/CSVkZ 我在这里发布了代码..
标签: javascript jquery event-delegation