2015-08-19 52 views
0

JS:我找函數獲取自動保存在瀏覽器中,直到提交

(function(window, document, undefined) { 
    function changeSelect(event) { 
     if(event.target.type=='checkbox' || event.target.type=='radio') { 
      window.localStorage.setItem(event.target.id, event.target.checked?'checked':'unchecked'); 
     } else { 
      window.localStorage.setItem(event.target.id, event.target.value); 
     } 
    } 
    function load(event) { 
     var i = 0, k, e; 
     while(i < window.localStorage.length) { 
      k = window.localStorage.key(i++); 
      e = document.getElementById(k); 
      if(e) { 
       if(e.type=='checkbox' || e.type=='radio') { 
        e.checked = window.localStorage.getItem(k)=='checked'; 
       } else { 
        e.value = window.localStorage.getItem(k); 
       } 
      } 
     }   
    } 
    function clearData(event) { 
     window.localStorage.clear(); 
    } 
    window.addEventListener('load', load, true); 
    window.addEventListener('change', changeSelect, true); 
    window.addEventListener('select', changeSelect, true); 
    window.addEventListener('submit', clearData, true); 
})(window, document) 

我從網上得到這個代碼,它是工作的罰款。

我有一個要求,如果員工做長時間報價突然瀏覽器關閉發生任何問題,它應該檢索我們輸入的全部數據。 問題與上面的代碼是未服用剩下的一切走的是兩條輸入字段的數據:

兩個輸入字段爲空總是:

  1. 下拉字段的數據,
  2. 一些輸入字段我得到表單服務器使用用戶輸入。

這兩個字段總是空的。如果我重新加載。

如果您有一些更好的(或)可能的編碼,在重新加載頁面時返回所有細節(對於某些Internet問題發生)。

在此先感謝。

回答

1

添加其他事件也:

window.addEventListener('keyup', changeSelect, true); 
window.addEventListener('click', changeSelect, true); 
相關問題