2012-12-13 57 views
0

我正在開發一個應用程序,我需要從文本框捕獲用戶輸入,如果他停止鍵入超過3秒。意味着我們需要使用JavaScript捕獲該文本,並且需要將它存儲在MySQL數據庫中... plz幫助我解決這個問題?如何捕獲用戶輸入文本框的值,如果他等待超過3秒鐘沒有進入和存儲在數據庫中使用JScript

Thank you..... 
+0

您可以創建JavaScript函數基於XHR/AJAX調用,將這些信息保存每3秒一已逾時一個不錯的參考... – SriN

回答

2

將事件附加到輸入(例如keyup,keydown,keypress)。在那裏你會用回調設置setTimeout。當然,超時ID將被存儲在一個var(例如window.type_timeout)中。 setTimeout回調將執行你想要的3秒鐘不活動狀態。

您可以從這裏開始。例如(使用jQuery):

$('input').on('keyup',function(){ 
    if(window.type_timeout) clearTimeout(window.type_timeout); 
    window.type_timeout = setTimeout(do_stuff , 3000 , this /* extra data */); 
}); 

function do_stuff(input){ /* do your stuff */ } 
0

使用setTimeout。 W3學校對JavaScript timing

<script> 
    inputSaveTimeout = null; 
    function DoSomething() { 
     window.clearTimeout(inputSaveTimeout); 
     alert('I just did something'); 
    } 
    function Updated(e) { 
     window.clearTimeout(inputSaveTimeout); 
     inputSaveTimeout = setTimeout(Save, 3000, e.value); 
    } 
    function Save(data) { 
     alert('Saved: ' + data); 
    } 
</script> 
<input type="text" onkeydown="Updated(this);" /><input type="button" value="Do Something" onclick="DoSomething(); return false;" /> 
相關問題