我有一个文本框并分配了以下功能(它是唯一分配的功能):
txt.bind("keyup",function(event){
if(event.keyCode==13)
{
var nu = $("#debug").html();
nu+="<br>enter";
$("#debug").html(nu);
}
});
Run Code Online (Sandbox Code Playgroud)
奇怪的是它实际上发射了两次,因此在我的调试窗口中显示"输入"两次.有谁知道是什么原因造成的?
我知道已经有一段时间了,但我很惊讶没有人建议:
txt.unbind();
txt.bind("keyup",function(event){
if(event.keyCode==13)
{
var nu = $("#debug").html();
nu+="<br>enter";
$("#debug").html(nu);
}
});
Run Code Online (Sandbox Code Playgroud)
如果某种方式已经绑定了txt,则在新绑定之前调用unbind应该修复它.当然,最好弄清楚为什么它被绑定两次.这恰好发生在我身上,因为我不小心把我的JavaScirpt文件包含了两次.召唤解除绑定帮助我确定问题所在.