[英]How to restore javascript value from localstorage?
代碼 :
Test2 =<input type="text" id="idfield1" name="test2">
<br/> Test3 =<input type="text" id="idfield2" name="test3">
<script>
$('#idfield1').keypress(function() {
document.getElementById('idfield2').value='text to be displayed' ;
});
(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('keyup', changeSelect, true);
window.addEventListener('click', changeSelect, true);
window.addEventListener('submit', clearData, true);
})(window, document)
</script>
http://jsfiddle.net/kxc156ox/6/
我想在瀏覽器意外關閉或重新加載時恢復輸入值。
多個值來自基於用戶輸入的 javscript。如果用戶不小心關閉了頁面,由於互聯網,他的頁面被重新加載,所有值都應該從本地存儲恢復。
當你重新加載 text3 值不來時 .text2 值來了
請幫助我以任何方式獲得價值。我在這個表格上工作了很長時間。任何幫助都會非常有用。
提前致謝 。
我認為下面的小提琴鏈接將解決您的問題。
$('#idfield1').keypress(function(evt) {
document.getElementById('idfield2').value=evt.currentTarget.value ;
});
(function(window, document, undefined) {
function changeSelect(event) {
var elements = document.getElementsByTagName("input");
//For query selection use below code
//var element = document.querySelectorAll("input[type=text]");
for(var index=0; index<elements.length; index++){
if (elements[index].type == 'checkbox' || elements[index].type == 'radio') {
window.localStorage.setItem(elements[index].id, elements[index].checked ? 'checked' : 'unchecked');
} else {
window.localStorage.setItem(elements[index].id, elements[index].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('keyup', changeSelect, true);
window.addEventListener('click', changeSelect, true);
window.addEventListener('submit', clearData, true);
})(window, document)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.