[英]How to prevent blur event before click event in twitter bootstrap 3.1 modal dialog when user clicks outside of it.!
我正在使用twitterbootstrap 3.1.0,並且我有一個模態。我希望每當用戶在模態之外單擊時都隱藏該模態(因此我使用了data-backdrop="true"
並可以正常工作。)
我的模態對話框有一個焦點輸入元素,該元素具有字段驗證,並且每當顯示模態對話框時,該輸入框都會被聚焦。在該輸入框模糊時,將進行驗證並相應地引發錯誤。(我希望這種邏輯保持不變)。 !!
我的問題是每當用戶在模式對話框外單擊時,它就會消失,並顯示一條錯誤消息(輸入字段的字段驗證)。由於單擊前觸發了模糊事件,它會顯示錯誤消息,然后模式對話框消失。
我不希望在顯示模式對話框之前顯示字段驗證消息。
請幫忙 ! 提前致謝。
單擊前會模糊,您無法更改它。 我的建議是將驗證從模糊轉移到單擊按鈕(我猜您必須具有“確定”或“提交”按鈕)。 這樣可以解決您的問題。
我也有一些技巧(我建議反對)。 由於您遇到了這個問題,我假設您使用動畫制作了模態皮革
隱藏模態而不使用動畫。 該消息仍將在那里,但是您將沒有時間看到它。
如果您想知道動畫時間,可以在該時間之后使用setTimeout來檢查模態是否仍然可見。 如果是,則顯示錯誤消息,否則不顯示。
說模態消失需要1秒,您可以嘗試這樣的操作
// Inside blur callback function
setTimout(function(){
if($("#modal").is(":visible")) {
// show error message
}
},1100); //1.1 seconds
在您的方案中,我還是會更喜歡使驗證遠離模糊:)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.