Javascript 如何将数组从一个html传递到另一个html页面?

Javascript 如何将数组从一个html传递到另一个html页面?,javascript,html,arrays,cordova,Javascript,Html,Arrays,Cordova,我将此用于Phonegap,因此,我更喜欢javascript中的解决方案 我发现很多解决方案都是使用PHP。这就是为什么我想说清楚的原因 我得到一个数组,它的值来自数据库。我想把这个数组传递到第二个HTML页面 要传递变量,请使用以下代码 编辑: window.location.href="1stpage.html"?var1=&value; 希望,我的编码是正确的 如果我错了,请引导我 根据建议的答案进行更改 朱利奥·梅卡·汉森先生,我也尝试过同样的方法 window.loca

我将此用于Phonegap,因此,我更喜欢javascript中的解决方案

我发现很多解决方案都是使用PHP。这就是为什么我想说清楚的原因

我得到一个数组,它的值来自数据库。我想把这个数组传递到第二个HTML页面

要传递变量,请使用以下代码

编辑:

 window.location.href="1stpage.html"?var1=&value;
希望,我的编码是正确的

如果我错了,请引导我

根据建议的答案进行更改

朱利奥·梅卡·汉森先生,我也尝试过同样的方法

 window.location.href='1st page.html?var1=5&var2=6'; 
并尝试通过在第二页打印值来验证它

console.log("value1: "+var1 +"value2: "+var2 ); 
唉!,我得到这个错误

E/Web Console(12476): ReferenceError: Can't find variable: var1 at file:///android_asset/www/1st%20page.html?var1=5&var2=6:17 

如果代码链接到图像,则更像这样:

<img src="images/img1.png" alt="" onclick="window.location.href='1stpage.html?var1=5&var2=6';">


修改它以满足您的需要:p

如果代码链接到图像,则更像这样:

<img src="images/img1.png" alt="" onclick="window.location.href='1stpage.html?var1=5&var2=6';">


修改它以满足您的需要:p

如果您不想使用javascript:

<a href="1stpage.html?var1=5&var2=6">
   <img src="images/img1.png" alt="" />
</a>

如果您不想使用javascript:

<a href="1stpage.html?var1=5&var2=6">
   <img src="images/img1.png" alt="" />
</a>

我假设您使用的是jquery,但在普通的旧js中原理是一样的-使用cookie,例如


这实际上存储的是数组,而不是其他答案中描述的变量负载。

我假设您使用的是jquery,但在普通的旧js中原理是相同的-使用cookie,例如


这实际上存储的是数组,而不是其他答案中描述的变量负载。

如果此数组仅由JavaScript使用,则不要使用cookie。Cookie用于存储服务器需要访问的信息,随意设置Cookie可以显著增加您的网络使用率

相反,使用JavaScript的
localStorage
接口。它受到所有现代浏览器的支持(IE7及以下版本不算“现代”,尤其是Windows Update几乎迫使您进行更新),并且非常易于使用:

var someArray = [1,2,3,4];
if( !window.localStorage) alert("Sorry, you're using an ancient browser");
else {
    localStorage.myArray = JSON.stringify(someArray);
}
稍后,您可以检索它:
JSON.parse(localStorage.myArray)


我希望这就是你正在努力实现的目标。如果没有,请澄清您的问题;)

如果此数组仅由JavaScript使用,则不要使用cookie。Cookie用于存储服务器需要访问的信息,随意设置Cookie可以显著增加您的网络使用率

相反,使用JavaScript的
localStorage
接口。它受到所有现代浏览器的支持(IE7及以下版本不算“现代”,尤其是Windows Update几乎迫使您进行更新),并且非常易于使用:

var someArray = [1,2,3,4];
if( !window.localStorage) alert("Sorry, you're using an ancient browser");
else {
    localStorage.myArray = JSON.stringify(someArray);
}
稍后,您可以检索它:
JSON.parse(localStorage.myArray)



我希望这就是你正在努力实现的目标。如果没有,请澄清您的问题;)

您的代码无效-JS与HTML不同,您没有将它们包装在
符号之间;)哎呀,对不起,我可能被纠正了!这是一种不寻常的情况,因为用户可能会更改数据。通常,您会在页面之间从数据库检索数据。@SLC我希望有所不同-有时在页面之间传递字符串或数组可能很重要,例如多步骤表单(从技术上讲,您可以使用cookie来实现这一点,但这并不能使它们更安全)。分页也充分利用了在页面之间传递各种变量的功能。我个人不会这么做的原因有很多,比如服务器端验证,或者用户在浏览器中按“后退”按钮,或者按F5,或者如果第1页出现验证错误,而您在第4页,当你纠正错误后按“下一步”时,你必须回到那里,做一个噩梦,确保你不会丢失第2、3、4页上的信息。在我看来,有很多不必要的包袱,编程和维护都是一个怪物。你的代码是无效的-JS不同于HTML,你没有把它们包装在
符号之间;)哎呀,对不起,我可能被纠正了!这是一种不寻常的情况,因为用户可能会更改数据。通常,您会在页面之间从数据库检索数据。@SLC我希望有所不同-有时在页面之间传递字符串或数组可能很重要,例如多步骤表单(从技术上讲,您可以使用cookie来实现这一点,但这并不能使它们更安全)。分页也充分利用了在页面之间传递各种变量的功能。我个人不会这么做的原因有很多,比如服务器端验证,或者用户在浏览器中按“后退”按钮,或者按F5,或者如果第1页出现验证错误,而您在第4页,当你纠正错误后按“下一步”时,你必须回到那里,做一个噩梦,确保你不会丢失第2、3、4页上的信息。在我看来,有很多不必要的包袱,编程和维护都是一件怪事。Julio Meca Hansen先生,谢谢你。首先,我在使用映射,用于点击……第二个注意,我需要传递一个数组,而不是变量。如果他/她想使用$\u GET来获取值,第二个页面应该是php,而不是html。没关系。。。我编写了
var1=5
,但您可以轻松地编写
a[sample1]=5
等等。理想的做法是使用
http\u build\u query()
函数自动构建URL参数,但如果您使用的是纯HTML,则需要手动指定每个参数,即数组或简单值。Julio Meca Hansen先生,我使用的是基本HTML。我会尝试让你知道它是否有效。当然不行,你不能直接传递数组
1stpage.html?var nameArray[]=results.rows.item(i).name“
不是有效的参数。假设i等于5并且
results.rows.item(i).name
等于“dog”。您的参数类似于
1stpage.html?nameArray[5]=do