2

我有一系列链接,每个链接属于不同价格的不同产品。

例如:

<%a class="items" href="order.htm" alt="" onclick="javascript: num = 149.99">Content<%/a>

用户单击其中一个产品链接后,我希望能够在“订单”页面上显示该特定产品的价格。是否可以保留更改后的变量以在单独的订单页面上使用?如果是这样,怎么做?

这纯粹是为了我个人对 JavaScript 和 HTML5 的探索。

编辑:好的,所以使用 sessionStorage,我可以设置和获取变量。

例如:

myVar = window.sessionStorage;
myVar.setItem("key", "149.99");

现在,我将如何将 var 与产品链接集成,然后在下一页上调用该 var?

4

3 回答 3

2

您可以使用localStorage存储您的购物车

于 2013-05-05T20:34:18.113 回答
2

如果您正在创建一个购物页面,我肯定会建议您包含一些 PHP。仅使用 JS 和 HTML,您将遇到许多必须找到解决方法的问题。

使用像 PHP 的$_SESSIONsuperglobal 这样的服务器端存储。任何客户端存​​储都可能被操纵。你是说你没有发布它,但无论如何都要保持干净,不要以更糟糕的方式学习自己。

无论如何,如果你只是想让这个工作,这里是存储数据并在之后获取它的命令:

//store data on the initial page using setItem()
sessionStorage.setItem("mykey", "Some Value");

//on the next page get it with getItem() and declare it as a var
var persistedval = sessionStorage.getItem("mykey");
­
//Now you can write the price to the document using the variable
document.write("Total is: " + persistedval);

可以使用 getItem() 和 setItem() 设置和检索值,或者直接将键引用为对象的属性,就像我上面的示例一样。

但请记住,sessionStorage 不是很安全,因为它存储在浏览器会话中。

想象一下,您甚至忘记了价格验证检查,并且一些“黑客”操纵数据并将价格从 更改45,99-249,99并将产品名称更改为Credit note

如果你想更深入地了解购物页面、用户区域等,你应该首先专注于 HTML+PHP,并在需要时使用 JS(开始时主要是 DOM-Manipulation)。

但它非常适合存储用户登录信息、任何用户特定数据或不敏感数据,毫无疑问。

希望这可以帮助。

于 2013-05-06T00:38:34.293 回答
1

JavaScript 没有状态的概念,因此它本身不能跨页面保存信息。但是,有几种不同的方式可以让我们记住从一页到另一页的数据。

如果真的只有非常少量的数据要存储并且想要支持旧浏览器,我们可以使用cookie 。

另一种方法是使用LocalStorage来存储信息。这提供了更大的存储空间,并具有灵活且易于使用的格式来设置和检索数据。

于 2013-05-05T20:36:15.843 回答