如何确保只调用一次onkeyup事件

时间:2011-12-09 21:42:53

标签: jquery jquery-mobile

我正在尝试为'onkeyup'事件附加一个html标记。但我需要让它只在第一个keyup事件上做。

<label for="url">Add URL of your webpage:</label> 
<input type="text" id="url" name="url" value="" placeholder="Optional" onkeyup="addlink();"/>

我正在使用jquery append()函数来实现它。我无法找到有关如何确保仅在第一个keyup上触发事件的解决方案。并且在那之后不会被解雇。此外,如果文本输入中的所有内容都被删除,我想删除我附加的内容。 有没有办法实现它。我希望我已经解释过了。

2 个答案:

答案 0 :(得分:4)

尝试以下代码帮助

$('#url').one("keyup", function(){
   addLink();
});

jQuery one()事件仅针对给定元素触发一次

答案 1 :(得分:0)

为防止事件处理程序多次运行,您可以使用jQuery的.one()方法或.unbind(),具体取决于哪种方法更适合您的情况。