是否可以将字符串从一个.js传递到另一个.js文件?例如,main.html包含javascript。我需要将一个字符串从main.html传递到另一个HTML文件,该文件在运行时加载一个javascript文件。这可能吗?
答案 0 :(得分:3)
如果您正在加载一个全新的页面(page1.html),则无法将变量直接从一个JS文件传递到另一个JS文件(如果您在两个html页面中加载完全相同的JS文件,也不可能) 。
但是你为什么不把你的绳子粘在饼干里呢?根据您必须满足的浏览器,您还可以选择localStorage / SessionStorage。最后但并非最不重要的是,始终可以选择在请求URL(page1.html?mystring = foo)中传递变量,然后通过Javascript访问它。
答案 1 :(得分:2)
您可以更改指向下一页的链接的href以添加查询字符串。从那里你的javascript可以获取正在使用的URL,解析你传递的值并用你想要的值初始化。
通常这可以通过引用window.location来完成,但您也可以添加一个元素,然后您对新页面的URL看起来像http://wwww.yourdomain.com/page2.html?query_parameter=your_desired_string 根据我的经验,大多数现代浏览器会自动填充输入字段(如果它与查询字符串参数同名)。 从那里你的第二页上的javascript可以从隐藏的输入元素中获取值,以获得你想从一个页面到下一个页面的字符串。
如果您使用+符号可能会有一些困难,我在浏览网址时看到一些浏览器interpet +作为空格。在查询字符串上发送所需的字符串之前,您必须转义+以获得实数+。
答案 2 :(得分:0)
我只是将值放入cookie并引用该值以初始化第二个javascript文件中的字符串。