Je sais qu'il y a certainement une meilleure façon de le faire, mais je ne peux pas sembler comprendre. Je sais que j'ai besoin de créer une boucle, mais c'est à ce sujet:
function loadData() {
var getInput1 = localStorage.getItem("input1")
var parsedInput1 = JSON.parse(getInput1)
$("#planner-input-1").val(parsedInput1)
//--------------------------------------
var getInput2 = localStorage.getItem("input2")
var parsedInput2 = JSON.parse(getInput2)
$("#planner-input-2").val(parsedInput2)
//--------------------------------------
var getInput3 = localStorage.getItem("input3")
var parsedInput3 = JSON.parse(getInput3)
$("#planner-input-3").val(parsedInput3)
//--------------------------------------
// etc etc etc...
3 Réponses :
Vous pouvez itérer sur les indices, de 1 à plusieurs fois que vous avez et le concaténer avec Mais il serait préférable de ré-structurer vos données et de votre HTML - Utilisez une matrice dans le stockage local et utilisez des classes au lieu d'identifiants afin que vous puissiez faire quelque chose comme ça à la place: P> < Pré> xxx pré> Utilisation de cette méthode, le premier élément de la matrice de stockage local correspondra à la valeur à placer dans la première entrée Entrée code> pour rechercher la propriété appropriée sur localStorage code>: .Planner-entrée code>, etc. < / p> p>
Voici une autre méthode de traitement des données dans lesquelles les ID sont prédéfinis. Votre exemple m'inquiète que vos données sont hors de forme et finiront par vous mordre, mais sans plus de détails, je n'ai aucune recommandation. J'espère que cela aide! P>
p>
function loadItem(dataId, selector) {
var parsedInput = JSON.parse(dataId)
$("selector").val(parsedInput)
}
function loadData() {
var itemsToProcess = [{
dataId: input1,
selector: '#planner-input-1'
},
{
dataId: input2,
selector: '#planner-input-2'
},
{
dataId: input3,
selector: '#planner-input-3'
}
]
itemsToProcess.forEach(function(item) {
loadItem(item.dataId, item.selector);
})
// OR
for (let item of items) {
loadItem(item.dataId, item.selector);
}
}