我正在處理由HTML5本地存儲器保存的表單。Javascript:創建動態變量和對象名稱。/html5 localstorage
當按下保存:
function saveAll(){
var field1 = document.getElementById('field1').value;
localStorage.setItem('con_field1',field1);
var field2 = document.getElementById('field2').value;
localStorage.setItem('con_field2',field2);
var field3 = document.getElementById('field3').value;
localStorage.setItem('con_field3',field3);
var field4 = document.getElementById('field4').value;
localStorage.setItem('con_field4',field4);
var field5 = document.getElementById('field5').value;
localStorage.setItem('con_field5',field5);
var field6 = document.getElementById('field6').value;
localStorage.setItem('con_field6',field6);
}
和加載頁面(填寫表格)時:
function ShowAll() {
var field1 = localStorage.getItem('con_field1');
document.conditioning.field1.value = field1;
var field2 = localStorage.getItem('con_field2');
document.conditioning.field2.value = field2;
var field3 = localStorage.getItem('con_field3');
document.conditioning.field3.value = field3;
var field4 = localStorage.getItem('con_field4');
document.conditioning.field4.value = field4;
var field5 = localStorage.getItem('con_field5');
document.conditioning.field5.value = field5;
var field6 = localStorage.getItem('con_field6');
document.conditioning.field6.value = field6;
}
這一切工作正常,但我想更重新寫這個花式和高效的方式。我在想這樣的事情:
function ShowAll() {
var field = [];
for (i=0; i<6; i++) {
field[i] = localStorage.getItem(window['con_field' + i]);
document.purpose.field[i].value = window['con_field' + i]
}
}
但是瀏覽器不喜歡這個。基本上我需要創建一個循環,自動將「字段」名稱更改爲「field1,field2,field3」等。窗口工作正常,但我錯誤地使用了它。
任何人有想法?
非常感謝!
我建議重命名錶單項目,從零開始的邏輯是更爲常見。 – Bergi 2012-07-09 17:23:02