À la maison, accompagnez le congé de maternité, l'ennui, regardez votre projet précédent, et a soudainement constaté que les caddages que j'ai écrits auparavant ont été mis en œuvre avec des bases de données. efficacité. Soudain, si vous pouvez utiliser le stockage local HTML5, cela augmentera considérablement l'efficacité du programme. Bien sûr, le stockage local HTML5 implique la compatibilité de chaque navigateur et la taille (NKB) des données de stockage. Ce qui doit être expliqué ici est: si vous faites un petit projet micro-mai, vous pouvez essayer d'utiliser la procédure de stockage locale HTML5 pour réaliser le panier!
Cette section traite des fonctions du stockage local HTML5 pour réaliser les fonctions des voitures de magasinage!
Il faut expliquer: La partie précédente du blog des autres: Utilisation du stockage local HTML5, cette section utilise les connaissances de la section précédente pour réaliser le panier!
Expliquez d'abord la pensée générale:Dans une table de produit, l'ID du produit est différent.
Des exemples spécifiques sont les suivants:
Lorsque vous cliquez sur «Rejoignez le panier», le code d'exécution est le suivant:
var pid = $ (#HidPid). , PCOLOR: Color}; == keyName) {localStorage.RemoveItem (keyName);}} localStorage.SetItem (bat + pid, batstring);
Sous explication générale:
PID: ID de marchandise
Couleur: Couleur du produit
Num2: nombre de marchandises
Bat: objet JSON
Bouc-remorque: la chaîne convertie en l'objet JSON
Pour Loop: a traversé tout le stockage local actuel. les anciens.
Enfin, le stockage dynamique, la dynamique SO-appelée, est la combinaison des valeurs de clé de stockage locales et des ID de produit. En d'autres termes, différents produits seront stockés en tant que valeurs clés différentes. Enfin, nous n'avons qu'à analyser cette chaîne N différente, et nous obtiendrons un panier complet!
Hee hee, simple!
Alors, comment pouvez-vous traverser cette chaîne n json? comme suit:
Page de chargement de voiture de shopping:
$ (function () {for (var i = 0; i <localStorage.length; i ++) {var localValue = localStorage.getItem (localStorage.key (i)); var key = localStorage. (Key! = BAT && key.indexof (bat)> 0) {var obj = $ .parsejson (localValue); + PID + Quantité de produit: + NUM + Couleur du produit: + couleur);}}});
Explication générale:
Il traverse tout le stockage local et nécessite que la valeur de clé contient le sous-trait de chauve-souris du stockage local différent de la batte. <Évitez le stockage local conflictuel avec d'autres systèmes, de sorte que la demande doit contenir BAT>
Convertir la chaîne JSON en objet JSON
Et entrez l'ID du produit, le nombre de produits, la couleur du produit.
Avec l'ID du produit, la couleur du produit et le nombre de produits, nous pouvons alors utiliser JS ou Ajax pour charger les paniers d'achat que nous avons stockés localement. La méthode de chargement spécifique est la suivante:
$.ajax(...........)
ou:
Js couture html
Ici: pas de démonstration.
Ok, à partir de maintenant, le stockage local HTML5 est également terminé.
Continuer à améliorer ce blog
Il est mentionné ci-dessus que vous devez utiliser les coutures Ajax ou JS pour compléter la fonction de chargement.
Le code JS est le suivant:
$ (function () {varily = new Array (); for (var i = 0; i <localstorage.length; i ++) {var key = localStorage.key (i); var localValue = localStorage. getItem (key) ; coool = obj .pcolor; = {Carry: Carry}; $ .Post (/ home / getcarinfo, bat, fonction (data) {$ (#buycar) .html (data);}); data) {var arystr = new Array (); <span> (total '+ aryStr [1] +', sans fret) </span> ')});});
Pièce du contrôleur:
[Httppost] public String getCarinfo (dictionary <String, String> [] Carary) {UserMarmodel Model = new UserCarmodel (); ] [] Transport) {UserMarmodel Modèle = new UserCarmodel ();
Section modèle
String public getCarinfo (dictionary <string, string> [] Carary, int i = 0) {System.Text.StringBuilder sb = new System.TextBuilder (); Chargez le panier d'achat if (Carry! = NULL && length> 0) {sb.append (<ul>); foreach (var it item in carary) {String pid = item [pid]; string num = item [num]. ; Proinfo '> <div class =' thumb '> <img src =' + picPath + @ '/> </div> <div class =' desc clear-both '> <p> + ame + @ e </p> <small> CLASSIFICATION DE COULEUR: + PCOLOR + @ </STMIT> <SPAND> ¥ + CONVERT.TODOUBLE (ProductMol.Shopprice) .ToString (0.00) + @ </span> <div class = 'Ctrl-Div'> <div class = 'jian'> </ div> <div class = 'num'> + num + @ </ div> <div class = 'jia'> </div> </div> </ div> </li>);} sb.append (</ul>);} else {sb.append (<ul> <li onclick = 'gobuy2 ()'> li> <br/> </ul>) ;}} Else {// Calculez le montant total et le nombre de produits if (carary! = Null && length> 0) {foreach (var item in transport) {String pid = item [pid]; string num = item [num] ; ProductMol = bll.getmodel (convert.toxt32 (pid)); + Carry.length);} return sb.toString ();}
La carte d'effet est la suivante:
Ce qui précède est tout le contenu de cet article.