J'ai une forme simple comme ci-dessous. J'essaie de stocker toutes les valeurs code> d'entrée code>. J'ai essayé cela comme dans l'extrait de l'extrémité, mais ils ne sont pas stockés.
Je veux stocker les valeurs de toutes les entrées à la recherche et que vous souhaitez les utiliser pour le prochain clic de recherche, même l'utilisateur frappe la recherche avec des valeurs vides ou jusqu'à ce que La page actualisée (éventuellement le premier). P>
Toute aide ou des liens de guidage sont très appréciés. TIA! P>
p>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script> <input type="text" class="form-control" id="wordlength" placeholder="All" onkeypress="return (event.charCode !=8 && event.charCode ==0 || (event.charCode >= 48 && event.charCode <= 57))"> <select class="form-control" id="wordtype" name="wordtypesearch"> <option value="">word</option> <option value="old">old</option> <option value="new">new</option> </select> <select class="form-control" id="position" name="positionsearch"> <option value="containing">Containing</option> <option value="starting">Starting With</option> <option value="ending">Ending With</option> </select> <input type="text" class="form-control" id="word" placeholder="Text...."> <input type="submit" value="Search" id="submit" class="submit px-3">
3 Réponses :
Utilisez localStorage strong> pour stocker vos données non SessionStorage strong> comme:
Je ne veux plus la valeur lorsque le navigateur est fermé, alors j'utilise la session stockage à la place
SessionStorage B> et localStorage b>. S'il vous plaît - questions de boîtier.
Malheureusement, l'extrait de StackoverFlow n'est pas bon pour tester les fonctions de stockage - c'est Sandboxed fort> et, en tant que tel, ne peut pas obtenir / mettre des stockages (localStorage, SessionStorage). mais si vous l'essayez sur jsfiddle ( ou codépen.io, etc.), vous pouvez alors voir que votre code a besoin d'une petite modification (j'ai ajouté les modifications et les a commentées): p> p> <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<input type="text" class="form-control" id="wordlength" placeholder="All" onkeypress="return (event.charCode !=8 && event.charCode ==0 || (event.charCode >= 48 && event.charCode <= 57))">
<select class="form-control" id="wordtype" name="wordtypesearch">
<option value="">word</option>
<option value="old">old</option>
<option value="new">new</option>
</select>
<select class="form-control" id="position" name="positionsearch">
<option value="containing">Containing</option>
<option value="starting">Starting With</option>
<option value="ending">Ending With</option>
</select>
<input type="text" class="form-control" id="word" placeholder="Text....">
<input type="submit" value="Search" id="submit" class="submit px-3">
Cela me donne toujours des valeurs vides mate, au lieu de la session stockée
Pourriez-vous décrire ce que vous voulez vraiment? 1. Stockez toutes les valeurs d'entrée sur Soumettre 2. Si l'utilisateur démarre la recherche suivante, les valeurs doivent être lues à partir de la sessionStorage, mais ne pas écraser d'autres données saisies dans les champs de saisie 3. Conservez ces valeurs jusqu'à ce que la page Rafraîchir - est-ce correct?
Si vous souhaitez conserver les valeurs jusqu'à l'actualisation de la page, pourquoi ne pas simplement utiliser un objet pour stocker les données? Pourquoi avez-vous besoin de sessionStorage?
oui monsieur, si l'utilisateur soumet l'un des champs avec vide, il devrait prendre les valeurs de la session et non vide en entrée, mais pas de la session, espérons qu'il est clair
Pendant que l'utilisateur démarre la recherche suivante si les champs sont vides, alors il devrait acquérir à partir de la session et les valeurs de l'utilisateur doivent être telles qu'il est
Ce violon devrait faire l'astuce: jsfiddle.net/mukagergely/591qhnak essayez de changer quelque chose -> Recherche, Actualiser la page, etc.
J'ai ajouté un bouton de charge afin que vous puissiez essayer de remplacer vos données en chargement. Mais je ne peux toujours pas vous obtenir UseCase - si vous souhaitez conserver des données jusqu'à ce que la page Actualiser, vous n'avez pas besoin de sessionStorage, seul un objet à contenir les données
Je suppose que l'approche la plus facile sera de définir des variables code> dans prêts code> et simplement les écraser avec des valeurs sélectionnées.
EXM: $(document).ready(function() {
var postionValue;
$('#submit').on('click', function(e) {
......
postionValue = $("#position").val();
......
}
......
USE IT IN ANOTHER FUNCTION
......
}