Jquery/JS 绑定“粘贴”输入文本框的事件处理程序
好吧,所以我有一个输入框,每次它发生变化时我都需要做一些事情,我在鼠标粘贴方面遇到了困难。 代码
$("#attack-navy"+unit.ID+"-number").bind('paste', function(){
alert("paste detected");
$("#attack-max-capacity").text(getMaxCapacity());
});
这是我现在输入的 getMaxCapacity() 函数返回数字 * 30 的
;这是当
1:我粘贴3,它不会改变(我仍然看到警报)
2:那么当我粘贴5时,它将是90(3 * 30)
3:那么如果我粘贴10,它将是150(5 * 30),依此类推。
我认为它在粘贴实际发生之前执行处理程序。关于我能做什么有什么想法吗? (.更改不起作用,必须在粘贴后立即发生)
Allright, SO i have an input box and I need to do things everytime it changes, I am having trouble doing it for mouse paste. Here is the code I have
$("#attack-navy"+unit.ID+"-number").bind('paste', function(){
alert("paste detected");
$("#attack-max-capacity").text(getMaxCapacity());
});
the getMaxCapacity() function return number entered * 30 for now;
Here is the scenario when
1: I paste 3, it will not change (i still see the alert)
2: Then when i paste 5, it will be 90(3 * 30)
3: Then if i paste 10 it will be 150(5 * 30), and so on.
I think its doing the handler before the paste actually occurs. Any ideas on what I can do? (.change will not work, it must happen as soon as u paste)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
您应该处理
input
和propertychange
事件。演示。
You should handle the
input
andpropertychange
events.Demo.
你说得对。粘贴事件在输入值更改之前触发。尝试将处理程序包装在超时中:
You're right. The paste event is firing before the value of the input changes. Try wrapping your handler in a timeout:
将绑定事件替换为 .live,它应该可以工作,如下所示:
Replace the bind event with .live and it should work, like this: