我需要将从ASP.NET返回的日期与从JavaScript返回的日期同步。因此,我从隐藏字段中的服务器发送日期,然后从JavaScript获取新的Date()并获取时间偏移量。只需要近似时差。
当页面首次加载时,一切正常 - 服务器日期存储在隐藏字段中,值表单JavaScript“匹配”。但是,当我从页面导航然后单击“返回”按钮时,页面现在来自浏览器缓存,因此与JavaScript日期相比,服务器值已过时。
有没有办法让这两个日期保持一致 - 既可以从缓存中获取,也可以两者都不是从缓存中获取的?我想我需要一种客户端页面修改日期,如果页面来自浏览器缓存,则不会改变。我尝试过document.lastModified,但是当页面来自缓存时会发生变化。
谢谢。
答案 0 :(得分:0)
为什么不在第二个隐藏输入中保存偏移?
当页面加载时,让JavaScript检查隐藏的“Offfset”输入的值,如果它是空的,则填充它(使用原始的隐藏输入作为参考)。如果用户导航然后单击“返回”,则“偏移”字段仍将包含计算值,JavaScript将不会尝试更新它。
@ user1044169:好抓;我想you are correct。最好的建议似乎是将数据保存在cookie中。