- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
下面的代码有效,但问题是未定义显示在我的表格下方。我试图删除 sessionStorage.basket === undefined
,但它删除了整个表。有人可以帮助我吗?
// Load basket on page
window.onload = loadBasket;
// Displays basket in page.
function loadBasket() {
// Get basket from local storage or create one if it does not exist
var basketArray;
if(sessionStorage.basket === undefined || sessionStorage.basket === "") {
// Store as an array
basketArray = [];
}
else {
// Parse the data as an object
basketArray = JSON.parse(sessionStorage.basket);
}
// Build string with basket HTML
var htmlStr = "<form action='php/checkout.php' method='post'>";
// Get table body
var tableBody;
// Display table headers
var tableHeader = "<tr><th>Product Image</th><th>Product Name</th><th>Price</th></tr>\n";
// Store IDs as array
var prodIDs = [];
// For loop to display more products on the table
for(var i=0; i<basketArray.length; ++i) {
tableBody += "<tr><td class='image_column'>" + "<img class='basket_img' src='" + basketArray[i].image + "'>" + "</td><td>" + basketArray[i].name + "</td><td>£" + basketArray[i].price + "</td></tr>";
// Push data to insert into the database
prodIDs.push({
image: basketArray[i].image,
name: basketArray[i].name,
price: basketArray[i].price,
count: 1
});
}
// Add hidden field to form that contains stringified version of product ids.
htmlStr += "<input type='hidden' name='prodIDs' value='" + JSON.stringify(prodIDs) + "'>";
// Display the number of items in the basket
htmlStr += "<p class='basket_items'>Number of items in basket: " + "<span style='color:red'>" + basketArray.length + "</span>" + "</p>";
// Add checkout and empty basket buttons
htmlStr += "<button class='empty_basket' onclick='emptyBasket()'>Empty Basket</button>";
htmlStr += "<input class='checkout_button' type='submit' value='Checkout'></form>";
// Display number of products in basket
document.getElementById("basketDiv").innerHTML = htmlStr;
// Display table
document.getElementById("basket_list").innerHTML = tableHeader + tableBody;
}
最佳答案
使用 localStorage
而不是 sessionStorage
直到没有特定的使用理由。
原因:sessionStorage
每个窗口都可用,您可能已将购物篮的值(value)存储在其他窗口并试图进入不同的窗口。
Difference between
localStorage
instead ofsessionStorage
:
本地存储
存储在 localStorage
中的数据一直存在,直到被明确删除。所做的更改将被保存并可供所有当前和将来访问该网站时使用。
session 存储
对于 sessionStorage
,更改仅适用于每个窗口(或 Chrome 和 Firefox 等浏览器中的选项卡)。所做的更改将被保存并可用于当前页面,以及将来在同一窗口中访问该站点。窗口关闭后,存储将被删除。
你的问题:
首先确保您在 localStorage
中正确设置值(对象数组)。这样做:
localStorage.setItem("basket", JSON.stringify(basketvalues));
现在 loadBasket()
函数中的条件将如下所示:
if(localStorage.getItem("basket") === undefined || localStorage.getItem("basket") === "") {
// Store as an array
basketArray = [];
}
else {
// Parse the data as an object
basketArray = JSON.parse(localStorage.getItem("basket"));
}
有关 localStorage 的更多信息,请阅读此链接:
关于javascript - 未定义显示在我的表下方 - session 存储,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49727632/
我正在使用matplotlib创建简单的线图。我的图是一个简单的时间序列数据集,其中我沿x轴有时间,而我在y轴上有测量的值。 y值可以具有正值或负值,如果y值> 0,则我想用蓝色填充行上方和下方的颜色
我有一个简单的菜单,当单击菜单项时,该菜单会滚动到某个部分。 例如: Contact 将滚动到: 但是我也有一个始终粘在顶部的菜单,并且该菜单的高度不是用滚动脚本计算的。因此菜单总是悬停在元素的顶部
我有一个 UISearchBar 和 UISearchDisplayController,一切都很好,但我的范围选择器显示在文本字段旁边而不是下方。我知道这是设备横向时的预期操作,但由于我在 UISp
因此,我正在创建一个根据用户输入增大和缩小的 ListView ,我需要四个按钮,但我不知道如何让按钮与 ListView 的底部对齐并位于2x2 网格时尚。我已经尝试过相对布局,但似乎不起作用。谢谢
我正在使用的系统无法直接编辑每个页面上的 HTML。我想添加特定页面正文的顶部,但我输入 HTML 的框会自动将脚本放置在上面 我尝试过这个: $('body').prepend(''); 任何帮
设计模式一切都很好,但在实时导航栏位于 ScrollView 下方我该如何解决这个问题?请帮忙 最佳答案 同样,在没有看到任何代码的情况下很难说,但我相信导航栏根本没有显示。如果您直接从另一个 Vie
我现在必须重用和修改其他人的代码来创建图像处理应用程序。以下代码用于设置框架及其 GUI。我遇到的问题是,当在菜单栏上单击文件字时,菜单项列在 originalImage 容器中包含的 Canvas
我创建了一个 Angular 指令,用户可以在其中根据一天中的时间更改某些设置。下面是我已有的图片: 我想在 div 的 x 轴上添加一种准确表示时间的“滴答”,以向用户显示他在做什么,如下图所示:
这是下面的代码。 body { font-family: "Lato", sans-serif; } .sidenav { width: 130px; positio
这个问题在这里已经有了答案: Z-Index not working? [closed] (1 个回答) 关闭 5 年前。
我搜索了这个并尝试了 Z 轴的东西,但无济于事。基本上,我的导航栏在其下方的 div 下方显示有子菜单。那个 div 发生了不透明的事情,这一定与它有关。我需要这些显示在 div 上方!! JS fi
我正在处理的网站的某些页面使用脚本自动创建基于页面标题的目录。但是,我在获取“toc”div 以将页面的其余内容推送到其下方时遇到了一些问题。 TOC div 在我页面的最里面的 div 中,“con
我的代码 http://jsfiddle.net/p796z/1/ HTML Content Content Content Content Content Content
请看下面的代码: Button dropdown
我有一个表格,我希望它直接位于 Logo 下方位于页面中间。到目前为止,我似乎做不到更有什者。任何帮助将不胜感激。谢谢。 这是 HTML 代码:
我的 web 应用程序在与 jQuery Mobile 和 cordova 的聊天部分出现问题。我决定用 textaera 和发送消息的按钮修复页脚。但是当我触摸文本区域写消息时,我的键盘没有出现。我
我有两个来回箭头,可以单击它们在我的单页网站上的框架中浏览照片。我的术语在这里可能不正确。保存照片和前后箭头的 div 出现在我的屏幕下方,而不是在屏幕场景 div 中。我可以将图像向上移动以出现在屏
我使用自定义 CSS 和 Bootstrap 类名称构建了这个 header 。我已经尝试了 z-index、float: initial 属性。提前致谢 .branding-preview {
我有两个部分介绍网站上的用例和好处。如下。 .onboardmessaging { min-width: 100%; } .onboardmessagingwrap { min-wi
所以,我在网站上发现了这个很酷的 css/html slider ,所以我下载了代码,并打算研究它。我已经开始根据自己的需要对其进行编辑和设计,然后我遇到了这个问题:当我添加比原始尺寸更大的图像时,导
我是一名优秀的程序员,十分优秀!