Дома, сопровождающий декретный отпуск, скучный, посмотрите на ваш предыдущий проект, и внезапно обнаружил, что корзины по магазинам, которые я написал ранее, были реализованы с базами данных. эффективность. Внезапно, если вы можете использовать локальное хранилище HTML5, оно значительно повысит эффективность программы. Конечно, локальное хранилище HTML5 включает в себя совместимость каждого браузера и размер (NKB) данных хранения. Здесь нужно объяснить: если вы выполняете небольшой микроаллетный проект, то вы можете попытаться использовать процедуру локального хранения HTML5 для достижения корзины!
В этом разделе обсуждаются функции локального хранилища HTML5, чтобы реализовать функции покупок!
Следует объяснить: предыдущая часть блога других: HTML5 Local Researing Использование хранилища, в этом разделе используются знания предыдущего раздела, чтобы реализовать корзину для покупок!
Сначала объясните общее мышление:В таблице продукта идентификатор продукта отличается.
Конкретные примеры заключаются в следующем:
Когда вы нажимаете «Присоединяйтесь к корзине покупок», код выполнения следующим образом:
var pid = $ (#hidpid). , Pcolor: Color}; == keyname) {localstorage.removeitem (keyname);}} localstorage.setitem (bat+pid, batstring);
Под общим объяснением:
PID: Товар идентификатор
Цвет: цвет продукта
Num2: количество товаров
BAT: JSON Object
Поэтапно: строка преобразована в объект JSON
Для цикла: пройдет все текущее локальное хранилище. Старые.
Наконец, динамическое хранилище, SO -SALLED Dynamic, представляет собой комбинацию локальных значений ключей хранения и идентификаторов продукта. Другими словами, различные продукты будут храниться в виде различных ключевых значений. Наконец, нам нужно только проанализировать эту n другой строки, и мы получим полную корзину для покупок!
Хи Хи, просто!
Итак, как вы можете пройти эту строку n json? следующее:
Страница погрузки автомобиля:
$ (function () {for (var i = 0; i <localstorage.length; i ++) {var localValue = localStorage.getItem (localstorage.key (i)); var key = localstorage. Key (i); Если (Key! = Bat && Key.indexof (BAT)> = 0) {var obj = $ .parsejson (localValue); + Pid + количество продукта: + num + color: + color);}}});
Общее объяснение:
Он пересекает все локальное хранилище и требует, чтобы значение ключа содержала подмикс BAT от локального хранилища, отличной от BAT. <Избегайте противоречивого локального хранилища с другими системами, поэтому запрос должен содержать BAT>
Преобразовать строку json в объект json
И введите идентификатор продукта, количество продуктов, цвет продукта.
С идентификатором продукта, цветом продукта и количеством продуктов, мы можем использовать JS или Ajax для загрузки корзин для покупок, которые мы хранят на месте. Конкретный метод загрузки следующим образом:
$.ajax(...........)
или:
JS Stitching Html
Здесь: нет демонстрации.
Хорошо, на данный момент все местное хранилище HTML5 также закончено.
Продолжайте улучшать этот блог
Выше упоминалось, что вам нужно использовать Ajax или JS, чтобы завершить функцию загрузки.
JS -код выглядит следующим образом:
$ (function () {varility = 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}; Data) {var arystr = new Array (); <pan> (total ' + arystr [1] +', без груза) </span> ')});});
Часть контроллера:
[Httppost] public String getCarinfo (Dictionary <String, String> [] Cary) {usercarmodel model = new usercarmodel (); ] [] Carry) {usercarmodel model = new usercarmodel ();
Раздел модели
Public String getCarinfo (Dictionary <String, String> [] Cary, int i = 0) {System.Text.StringBuilder sb = new System.TextBuilder (); Загрузите корзину, если (переносить! String PCOLOR = ITER [PCOLOR]; '> <Div class =' thumb '> <img src =' + picpath + @ ' /> < /div> <div class =' desc clear-both '> <p> + ame + @ e < /p> < Small> Color Classification: + pcolor + @</small> <pan> ¥ + 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 {// Рассчитайте общую сумму и количество продуктов if (cary! = Null && length> 0) {foreach (var in carry) {string pid = item [pid]; Productmol = bll.getModel (convert.toxt32 (pid)); Carry.length);} return sb.toString ();}
Карта эффекта выглядит следующим образом:
Выше всего содержимое этой статьи.