Mam ten projekt do szkoły, muszę załadować dane z sessionStorage do tabeli html podczas ładowania mojego pliku .html (nie tylko z pamięci podręcznej).Zapisz dane dynamicznie do localStorage i załaduj te dane do tabeli html gdy .html ładuje
wstawić nowe dane w sessionStorage z innego .html, muszę go zapisać dynamicznie (na przykład pierwszy wiersz moim stole jest rfc0, razon_social0, direccion_fiscal0, następny wiersz jest rfc1, razon_social1, direccion_fiscal1, etc .. .), używam tej funkcji JavaScript, żeby uratować moje dane:
function getInfo() {
if (sessionStorage.contador){
var i = parseInt(sessionStorage.contador);
}
else{
sessionStorage.setItem('contador', "0");
var i = parseInt(sessionStorage.contador);
}
var rfc = document.getElementById('RFC').value.toUpperCase();
sessionStorage.setItem('rfc' + i, rfc);
var razon_social = document.getElementById('razon_social').value;
sessionStorage.setItem('razon_social' + i, razon_social);
var domicilio_fiscal = document.getElementById('domicilio_fiscal').value;
sessionStorage.setItem('domicilio_fiscal' + i, domicilio_fiscal);
var banco = document.getElementById('banco').value;
sessionStorage.setItem('banco' + i, banco);
var numero_cuenta = document.getElementById('numero_cuenta').value;
sessionStorage.setItem('numero_cuenta' + i, numero_cuenta);
i++;
sessionStorage.setItem('contador', i);
}
w moim ciele onpageshow użyć tej funkcji, aby sprawdzić obsługę bagażu i wywołać dane:
function checkStorage() {
if(typeof(Storage) !== "undefined") {
if(sessionStorage.flag) {
agregarDatos();
}
}
else {
alert('Sorry! No Web Storage support...')
}
}
Moi agregarDatos function() jest:
function agregarDatos() {
var table = document.getElementById("tabla_clientes");
var i = parseInt(sessionStorage.contador);
var conta = 0;
while(conta <= i){
var row = table.insertRow(-1);
var cell0 = row.insertCell(0)
var cell1 = row.insertCell(1);
var cell2 = row.insertCell(2);
var cell3 = row.insertCell(3);
var cell4 = row.insertCell(4);
cell0.innerHTML = '<input class="check" type="checkbox" onClick="validateButton()">';
cell1.innerHTML = sessionStorage.getItem('rfc' + conta);
cell2.innerHTML = sessionStorage.getItem('razon_social' + conta);
cell3.innerHTML = sessionStorage.getItem('domicilio_fiscal' + conta);
cell4.innerHTML = '<input class="editar" type="button" value="Editar">';
conta++;
}
}
Kiedy to testuję, nie otrzymałem niczego, nawet gdy dodałem element po raz pierwszy, nie mogę określić, co jest nie tak.
Jeśli zapiszę dane bez identyfikatora, mogę dodać tylko jeden wiersz z ostatnimi przechowywanymi danymi.
P.D. Tylko ja mogę użyć JavaScript ...
Instrukcja dla 'conta <= i' jest, jak sądzę, prawdziwa, ponieważ indeks" contador "jest inicjowany z '0' –
' sessionStorage.contador' jest również inicjalizowany na 0 i zawiera liczbę elementów zapisane w pamięci. Jeśli na przykład są 3 elementy, wartość 'sessionStorage.contador' będzie wynosić 3, a' conta' będzie wymagać pętli od 0 do 2, ale z oryginalnym kodem będzie pętlą od 0 do 3, a ostatnia będzie pusty –