我目前正在尝试找到一种方法,在更新之前自动存储商品的先前价格。例如,如果在我的网站上我显示货币兑换为美元到欧元,并且我只获得实时兑换价格,我如何使用javascript在一行中显示先前的值并在另一行中显示更新的值。这是示例代码,假设随机数是货币之间的兑换价格。
标记:
<p id="price"></p>
<p id="previous"></p>
JavaScript:
<script>
var price = Math.round((Math.random() + 1)*100)/100;
document.getElementById("price").innerHTML = price;
</script>
在这种情况下,会出现一个随机数,例如 1.11。之后,我刷新页面,脚本再次运行,随机数变为 1.43。我想在 #price 下显示新的随机数,即 1.43,在本例中显示 #previous 下的旧(或以前)随机数,即 1.11。我如何使用 JavaScript 来执行此操作?
到目前为止,感谢@Terry,我已经得到了这样的结果:
<p id="price"></p>
<p id="previous"></p>
<script>
var price = Math.round((Math.random() + 1)*100)/100;
document.getElementById("price").innerHTML = price;
localStorage.previous = price;
document.getElementById("previous").innerHTML = localStorage.previous;
</script>
有没有办法在页面刷新后使用 localStorage 保存之前的价格(或旧的随机数)?
最佳答案
刷新整个页面将再次运行整个脚本,因此有两种可能的解决方案
- 使用ajax请求加载新价格,有很多库可以帮助您,例如JQuery
- 如果您必须刷新页面并且您有服务器端代码,则将旧值保存在隐藏字段中,并更新您的服务器端和客户端逻辑以考虑在隐藏字段中包含值。
关于JavaScript .onchange?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28146476/