2013-06-18 120 views
1

新手到該網站,它幫助我出了堆,但我一直無法找到解決我目前的問題。如果我錯過了 - 請指導我。jQuery - 將元素附加到DOM模糊停止點擊事件

我有一個窗體,使用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)這讓我的方式的一部分,但不是全部的路。

任何人有任何想法如何讓點擊事件被觸發?

謝謝!

回答

1

我不認爲click事件正在停止......在blur上,您在文本框和按鈕之間添加了元素,因此在點擊該按鈕時,按鈕已被新元素移動。

如果按鈕後添加的元素,你可以看到被註冊click事件:http://jsfiddle.net/rSy2w/1/

+0

感謝您的幫助 - 它是有道理的 – andyz

+0

什麼解決的辦法?重新排列元素? – Ahamed

相關問題