【问题标题】:Passing javascript variables between pages [duplicate]在页面之间传递javascript变量[重复]
【发布时间】:2012-07-19 20:37:57
【问题描述】:

可能重复:
Persist javascript variables across pages?
how to exchange variables between two html pages

我正在创建一个“测验”,允许用户回答问题,然后将他们的答案和当前分数传递到下一个问题的下一页。我使用了这篇文章,并且能够将用户的答案传递到下一个窗口:

http://www.htmlgoodies.com/beyond/javascript/article.php/3471111/A-Quick-Tutorial-on-JavaScript-Variable-Passing.htm

问题在于这会通过表单传递信息。一旦我在第二页收到分数,如果答案正确,我需要增加分数。我不知道如何使用 html 表单传递 javascript 变量。

我觉得这应该是一个相对容易解决的问题,我只是难住了。

任何想法或建议将不胜感激! xoxo

【问题讨论】:

标签: javascript html forms


【解决方案1】:

有两种明显的方法可以在浏览器中维护状态,而不需要服务器在页面之间记住它:

  1. Cookie

  2. localStorage

后者实现起来很简单,但仅在 HTML5 中可用。

请注意,两者都不是安全 - 一个确定的页面黑客可以将任何一个设置为他们想要的任何值。

【讨论】:

  • 也可以使用查询字符串和主题标签。然后接收页面将读取 url 并解析它们。两者都是可见的,并且很容易编辑。
  • 主题标签是在 Twitter 上标记为“请搜索我”的阶段,不要与 URI 上的片段标识符(evil when used for Ajaxy things)混淆。
【解决方案2】:

您可以使用get 方法<form method="get" 提交表单,然后使用javascript 解析url 中的参数。 Reference这里:

【讨论】:

  • 但是这种方法并不安全,每个人都可以读取源代码并更改内容....这种情况下您应该有服务器参与
  • 使用 Java Script 比仅仅使用 localStorage 更“难看”
  • 是的,很急,但兼容更多浏览器,不支持本地存储的旧浏览器
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-07-05
  • 1970-01-01
  • 1970-01-01
  • 2015-02-21
相关资源
最近更新 更多