2011-09-26 60 views
0

我有一個用戶可以輸入文本的文本框。文本框所在的區域可以用不同的HTML重新加載,具體取決於用戶的操作,我希望文本框能夠「記住」用戶在返回時鍵入的內容。自動保存文本框內容

問題始於用戶可以從文本框中導航的許多不同方式 - 他可以將許多不同的HTML片段加載到我的操作區域,每個都會擦除文本框。

有沒有辦法讓我在保存文本內容的時候全面保存?是否有相當於文本框的onUnload()事件?

有兩種方法我可以看到這將解決我的問題:

  1. 設置文本框看門狗功能,存儲在內存中,每當用戶鍵入任何更新文本。
  2. 爲每個重新加載操作區域的函數添加saveText()調用。

這些都不是特別吸引人。有沒有更好的方法來做到這一點?

感謝,

回答

1

onchange是你在找什麼。當用戶退出文本框時,會觸發change事件。

onchangeonblurfocusout一個更好的選擇,因爲blurfocusout當文本字段的內容沒有改變也火了。

一個基本的例子:

var textarea = document.getElementById("myTextfield"); 
textarea.onchange = function(ev){ 
    call_function_that_saves(this.value); 
} 

一種unload事件非嵌入式元件不存在。考慮當這樣一個事件處理程序存在時會發生什麼,並且一個巨大的頁面卸載。

相關問題