2009-08-14 106 views
1

我有一個文本區域和一個窗體上的「添加」按鈕。默認情況下,文本區域顯示爲收縮並變灰。重點將通過改變風格來突出顯示。在模糊時,它應該回到之前的狀態。除突出顯示textarea外,添加註釋應切換爲可見和隱藏。問題是,當我在文本區域輸入數據並單擊添加按鈕時,模糊事件隱藏添加按鈕,添加按鈕上的事件從不觸發。任何解決方案?JQuery模糊事件

好像我的問題是不明確...... 該解決方案是一樣的東西,只是接下來的重點元素不是「添加」按鈕執行模糊事件......

+2

一些代碼會做得很好:) – 2009-08-14 14:30:13

回答

6

如果有文本輸入可以安全地假設您不想切換按鈕,因爲用戶有輸入筆記的意圖?如果是這樣,你可以做這樣的事情:

$(textBox).blur(function() { 
    if($(this).val().length == 0) { 
    //change the style 
    //hide the button 
    } 
}) 
+0

這不是一個確切的解決方案,但它以體面的方式解決了問題。 – 2009-08-16 13:22:54

0

之間放一個小的延遲焦點離開文本框和按鈕被隱藏,例如

function textBox_blur(evt) 
{ 
    window.setTimeout(
     function() { button.style.display = 'none'; }, 
     200 // length of delay in milliseconds 
    ); 
} 

這會留下足夠的時間點擊過程(雖然你可能會希望延遲的長度玩)

1

您需要unhighlight您的textarea和隱藏的「添加」按鈕只如果沒有什麼textarea的進入:

$('textarea').blur(function() { 
    if($(this).val() != '') { 
     // unhighlight textarea 
     // hide "add" button 
    } 
}); 

這樣,用戶總是能看到現場和按鈕,如果他們真的輸入了什麼東西進去,不管它是否已集中與否。

+0

+1在那裏我得到了幾秒鐘! – doomspork 2009-08-14 14:37:20