Tengo dos valores en mi html: "Dinero" y "Tiempo", y esos valores provienen del Almacenamiento de sesión, según lo que la persona llenó previamente en otra página html. Entonces, digamos que la persona indicó que debe pagar $ 100 en 2 días.
Lo que estoy tratando de hacer es crear una lista que muestre la cantidad de pagos, con la cantidad a pagar en cada pago. Como el ejemplo de abajo
DINERO: $100 / TIEMPO: 2 Días
RESULTADO:
Entonces, si la persona tiene 5 días, en lugar de 2, aparecería como:
Por alguna razón, cuando pruebo mi código en codepen, usando números aleatorios en lugar de los valores que tengo en Session Storage, funciona bien, pero cuando uso los números de Session Storage, el resultado es siempre el mismo: tengo un <li> con solo un "tema" como:
DINERO: $100 / TIEMPO: 2 Días
RESULTADO:
Leí en alguna parte que podría deberse a que mis valores estaban almacenados como cadenas, pero no sé si eso es correcto, ni sé cómo deshacerlo.
Código actual a continuación:
<p id="money-value"></p> <p id="time-value"></p> <div id="payments"></div> <script> const displayMoney = document.getElementById("money-value"); const storedMoney = sessionStorage.getItem("Money") window.addEventListener("load", () => { displayMoney.innerHTML = "Money: " + storedMoney }); const displayTime = document.getElementById("time-value"); const storedTime = sessionStorage.getItem("Time") window.addEventListener("load", () => { displayTime.innerHTML = "Time: " + storedTime }); var calc = storedMoney / storedTime; for (let i = 0; i < storedTime; i++) { var list = document.createElement("li"); list.innerText = `${calc}`; document.getElementById("payments").appendChild(list); }sessionStorage.getItem("Tiempo")
solo devolverá el primer elemento que coincida con el selector. Esto es similar a document.querySelector("selector") , que solo devolverá la primera instancia de una coincidencia con ese selector, mientras que document.querySelectorAll("selector") le dará todos los elementos con ese selector. getItem no tiene tal alternativa Todos.
En su lugar, utilice claves. Vea algunas soluciones para su problema en esta publicación (probablemente la más fácil es forEach): Javascript: ¿Recuperar todas las claves de sessionStorage?