我有一个表单,它使用jQuery在模糊事件期间附加一个div标签进行验证,效果很好。但是,如果单击该按钮,则会在将div附加到DOM后删除“click”事件。我已经能够简化我在这里遇到的问题:http://jsfiddle.net/rSy2w/
function log(msg) {
$('#msgs').append('<br>').append('' + msg);
}
function onFocus() {
log('focus');
}
function onBlur() {
log('enter blur');
addElement($(this));
log('exit blur');
}
function continueOn() {
log('continue click');
}
function addElement(field) {
field.parent().append('<div class="message">New DIV Element</div>');
}
$(document).ready(function() {
$('#myform input').focus(onFocus);
$('#myform .field-text').on('blur','input', onBlur);
$('#continue').click(continueOn);
});
我的帖子基于这里的帖子(Blur event stops click event)让我参与其中,但不是一直都是这样。
任何人都对如何触发点击事件有任何想法?
谢谢!
答案 0 :(得分:1)
我不认为click
事件正在停止...在blur
上,您在文本框和按钮之间添加元素,所以当您点击时,该按钮已被移动由新元素。
如果您在按钮后添加元素,则可以看到正在注册的click
事件:http://jsfiddle.net/rSy2w/1/