2016-04-14 48 views
0
<script> 

(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); 
     } 
     if(event.target.type=='select'){ 
     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); 
       } 
       if(e.type=='select'){ 
       alert('karthika'); 
       } 

      } 
     }   
    } 
    function clearData(event) { 
     window.localStorage.clear(); 
    } 
    window.addEventListener('load', load, true); 
    window.addEventListener('change', changeSelect, true); 
    window.addEventListener('select', changeSelect, true); 
    window.addEventListener('keyup', changeSelect, true); 
    window.addEventListener('click', changeSelect, true); 
    window.addEventListener('submit', clearData, true); 
})(window, document) 
    </script> 

我正在存儲表單數據的內存並檢索它,當瀏覽器突然關閉或系統關閉時,像這樣的問題發生。無法檢索選擇輸入值窗體window.localstorage

在上面的代碼我可以能夠檢索用戶輸入,文本區域,複選框。但兩種類型的值沒有顯示選擇輸入和自動輸入值取決於其它輸入域

我怎樣才能能夠顯示選擇輸入值和自動生成的值取決於用戶輸入。

在此先感謝

+0

你能分享小提琴? – Rayon

+0

https://jsfiddle.net/tejdeep123/4edk1t13/3/ –

回答

1

對於選擇元素,你需要測試的標記名屬性,而不是type屬性

if (e.tagName == 'SELECT') { 
    alert('karthika'); 
} 

演示:相同的Fiddle

+0

是的,我現在警報即將到來,但現在沒有價值,當我測試與原代碼 –

+0

@ KarthikaRam嘗試https://jsfiddle.net/arunpjohny/7tas86m5/3/ –

+0

對不起,沒有運氣不適合我 –